我在制表符分隔的长度不均匀的行中有数据,我想为每一行制作直方图:
1 23 352 4 12 94 0 2
434 13 29
5 93 93 34
(...more rows)
这是我目前所拥有的(不包括任何幻想):
data = read.delim(file.txt,header = F, sep="\t")
for (j in 1:nrow(data)) { #loop over each row
hist(data[j,])
但是当我尝试制作直方图时,我认为它试图将NA包含在数据帧的行中,因为R给出了错误消息:“hist.default中的错误(data [2,]): 'x'必须是数字“。
当我尝试使用时:
read.scan("file.txt, sep="\t")
我留下的东西我不知道如何按行分隔。我有一个更好的选择,而不是将文件分成每个文件一行,然后分别读取每一行? (我遇到了列尺寸不均匀的问题......)
答案 0 :(得分:2)
错误的结果是从data.frame中获取行会产生类data.frame
的对象(而hist()
需要类numeric
)。只需将其转换为numeric
:
hist(as.numeric(data[j,]))