R:使用另一个向量创建具有特定值的向量

时间:2017-10-18 05:01:05

标签: r

所以我有一个包含列标题IDScoreAge的csv文件。 所以在R我有,

data <- read.csv(file.choose(), header=T)

attach(data)

我想创建两个新的向量,其中包含年龄低于70岁和70岁以上的人的分数。我认为有一个很好的快速方法来做到这一点,但我无法在任何地方找到它。谢谢你的帮助

数据的示例

ID,分数,年龄

1,20,77

2,32,65

....等

我正在尝试制作2个向量,其中包括所有年龄小于70且所有人的年龄超过70的人的分数

1 个答案:

答案 0 :(得分:2)

假设data看起来像这样:

   Score Age
1      1  29
2      5  39
3      8  40
4      3  89
5      5  31
6      6  23
7      7  75
8      3   3
9      2  23
10     6  54
..     .  ..

你可以使用

df_old <- data[data$Age >= 70,]
df_young <- data[data$Age < 70,]

给你

> df_old
   Score Age
4      3  89
7      7  75
11     7  97
13     3 101
16     5  89
18     5  89
19     4  96
20     3  97
21     8  75

> df_young
   Score Age
1      1  29
2      5  39
3      8  40
5      5  31
6      6  23
8      3   3
9      2  23
10     6  54
12     4  23
14     2  23
15     4  45
17     7  53

PS:如果你只想要分数而不是年龄,你可以使用它:

df_old <- data[data$Age >= 70, "Score"]
df_young <- data[data$Age < 70, "Score"]