R语言如何解决
“Error in scan(file = file, what = what, sep = sep, quote = quote, dec = dec, :
line 187 did not have 4 elements”
在read.talbe时增加,fill=TRUE.
在用reshape的cast时可添加fill=数字,将na值替换为该数字。
将数据框中的na值替换为0
df[is.na(df)]<- 0 ,实质是对true和false的应用,也可应用到%in%中。
写文件 用write(),可以将数据写入已存在的文件中
怎么样将同一分组的数据放入同一行
形式:
num name
1 ad
1 ab
2 c
3 dg
3 dh
df
变为:
num name02
1 ad,ab
2 c
3 dg,dh
方法一:aggregate(name~num,df,paste0)
方法二:dcast(df,num~"name02",value.var = "words",fun.aggregate = function(x) paste(x,collapse = ", "))
参考:https://stackoverflow.com/questions/20764671/melting-dataframe-and-pasting-together-values-in-columns
方法一优点可以直接使用基础包,方法二需要加载reshape2,但方法一得到的表格,用write.csv/write.table写文件时会出错。
- 求多向量的共有部分。
方法一:用part1 <- a[a %in% b],part2 <-C[C %in% part1]
方法二: intersect(intersect(a,b),c)