我无法用read.csv((读取表,因为它有不同行长的列。
我的数据如下:
x y
1 cat small
2 dog medium
3 mouse
我想用NA填充较短的列,这样我就可以创建一个看起来像这样的数据帧:
x y
1 cat small
2 dog medium
3 mouse NA
read.scv文档有一个参数";Fill=TRUE";,但此函数只处理具有不同列长度的行的表。
谨致问候,Rikki
从data.table包中尝试fread。这可以识别空细胞并用NA填充它们
我为测试创建的csv看起来像:
a;b
1;1
2;2
3;3
;4
;5
R代码:
library(data.table)
fread(file.choose())
输出:
a b
1: 1 1
2: 2 2
3: 3 3
4: NA 4
5: NA 5
baseR:中的选项一
df[df==""]<-"NA"
x y
1 cat small
2 dog medium
3 mouse NA
或者选项二,您可以使用dplyr()
library(dplyr)
mutate_all(df, list(~na_if(.,"")))
x y
1 cat small
2 dog medium
3 mouse NA
样本数据