【问题标题】:Create subset of data in r在 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,因为上面的代码会产生错误并且不会创建这两个数据集。看起来您已经尝试了各种不同的方法,并且在某些时候您创建了这些数据集。 :) 正如人们上面所说,您应该删除引号,因为您正在处理数值。
  • 谢谢。它总是简单的解决方案......

标签: r subset between


【解决方案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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多