在 r 中创建数据子集

Posted

技术标签:

【中文标题】在 r 中创建数据子集【英文标题】:Create subset of data in r 【发布时间】:2019-06-27 16:49:40 【问题描述】:

我的数据有一列指定一年中的哪一天,下面的代码提供了一个示例数据集。我的代码没有出现任何错误,但是当我查看 'df_2' 和 'df_3' 中的观察数量时,出现了问题。我无法弄清楚它是什么。

#Example data
height <- c(21,34,64,27,74,90)
weight <- c(1,45,2,46,3,7)
day <- c(23,67,34,1,90,54)
df <- data.frame(height,weight,day)

#get days between 30 &70, and between 80 & 100
df_2 <- subset(df, day>”30” & day<”70”)
df_3 <- subset(df, day>”80” & day<”100”)
df_4 <- rbind(df_2,df_3)

我也尝试将其键入为范围,例如:subset(df, day[30:70] 但这会产生错误。

【问题讨论】:

您是否尝试过从数字中删除引号? 不要在应该是数字的值周围使用引号。 您不应该查看df_2df_3,因为上面的代码会产生错误并且不会创建这两个数据集。看起来您已经尝试了各种不同的方法,并且在某些时候您创建了这些数据集。 :) 正如人们上面所说,您应该删除引号,因为您正在处理数值。 谢谢。它总是简单的解决方案...... 【参考方案1】:

请去掉引号,因为它们是数字格式

df_2 <- subset(df, day>= 30 & day <= 70)
df_3 <- subset(df, day>=80 & day<=100)
df_4 <- rbind(df_2,df_3)

> print(df_4)
  height weight day
     34     45  67
     64      2  34
     90      7  54
     74      3  90

【讨论】:

以上是关于在 r 中创建数据子集的主要内容,如果未能解决你的问题,请参考以下文章

如何从这些数据框中创建子集?

如何使用开始日期在 R 中创建滞后的结束日期?

在 R 中创建空数据表

选择一个 Mat 的子集并复制它们以在 C++/Opencv 中创建一个新的 mat

如何在 R 中创建聚类图?

sqlSave 在 R 中创建数据框并将其保存到 sql 表