全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
25692 9
2016-10-05
如例子:
复制代码
#表示删除倒数第一行

而如下面的代码:
复制代码
#表示按照var去重

问题:“!” 和 “-”究竟怎么用?有什么差别呢?


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-10-5 23:57:03
data[-1,]这是删除第一行,减几表示删除第几行;而“!” 表示“与、或、非”中的“非”的意思,也就是说data[!duplicated(data$var),]表示为抽取data数据中不属于duplicated(data$var)的行。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-10-6 11:31:57
飞天玄舞6 发表于 2016-10-5 23:57
data[-1,]这是删除第一行,减几表示删除第几行;而“!” 表示“与、或、非”中的“非”的意思,也就是说da ...
谢谢!如果想按照变量var1删除特定观测值的话,使用以下哪个代码是正确的呢?还是都有问题?
复制代码
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-10-6 11:59:28
因为不知道你的数据结构是什么样的,所以我无法回答你的代码正确与否。给你举个例子:> data<-data.frame(name=c("a","b","d"),var1=c(2,4,6),var2=c(3,7,9))
> data
  name var1 var2
1    a    2    3
2    b    4    7
3    d    6    9
> # if you want to delete the row of “a” which in the column "name", you should:
> data[-which(data$name=="a"),]
  name var1 var2
2    b    4    7
3    d    6    9
> # if you want to delete the row of var1=4 or var2=3, you should use:
> data[-which(data$var1==4|data$var2==3),]
  name var1 var2
3    d    6    9

对列,同理。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-10-6 12:02:35
倒数第三行中data后有个美元符号再加变量,不知为什么一复制就没有了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-10-6 14:11:36
飞天玄舞6 发表于 2016-10-6 12:02
倒数第三行中data后有个美元符号再加变量,不知为什么一复制就没有了
谢谢,但是我在使用这个命令时遇到了一个问题。我用得数据是hflights包中的hflights数据。代码如下:
复制代码
可以看到,hflights数据中一共包含21个变量。而当我删除一部分观测值时:
复制代码
可以看到,新的flight_test数据中只剩下了18个变量,非常奇怪,我只是删除观测值,并没有删除变量啊?请问这是怎么回事呢?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群