Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 阅读表格、单行矩阵等_R - Fatal编程技术网

R 阅读表格、单行矩阵等

R 阅读表格、单行矩阵等,r,R,我正在努力解决一个我无法解决的简单问题,可能是因为缺少正确的关键字来查找 我有以下文件(test.data): 请注意,它是以制表符分隔的(对不起,在屏幕上不可见),没有尾随的制表符,第一行中少了一项,因此它将被解析为colnames。还请注意,缺少一项(第二行,列“Nd”);文件中完全为空(即两个连续的选项卡,中间没有任何内容) 福和y显然是两种不同的动物 尽管如此,我还是习惯性地对矩阵进行子集和绘图,那么foo有什么问题,以及如何解决它呢 谢谢 杰夫 更新: > str(foo) 'd

我正在努力解决一个我无法解决的简单问题,可能是因为缺少正确的关键字来查找

我有以下文件(test.data):

请注意,它是以制表符分隔的(对不起,在屏幕上不可见),没有尾随的制表符,第一行中少了一项,因此它将被解析为colnames。还请注意,缺少一项(第二行,列“Nd”);文件中完全为空(即两个连续的选项卡,中间没有任何内容)

福和y显然是两种不同的动物

尽管如此,我还是习惯性地对矩阵进行子集和绘图,那么foo有什么问题,以及如何解决它呢

谢谢

杰夫

更新:

> str(foo)
'data.frame':   2 obs. of  8 variables:
 $ Th: num  0.0813 0.333
 $ Ba: num  6.049 0.459
 $ Rb: num  0.535 0.356
 $ La: num  0.614 0.261
 $ Ce: num  1.601 0.224
 $ Nd: num  1.19 0
 $ Sm: num  0.387 0.203
 $ Eu: num  0.146 0.189
更新到我的更新(抱歉):

好的,我们知道

但是


两人工作都很愉快。现在我迷路了。为什么富[1,1:2]和富[1,1:4]的行为会不同

为了确定,请执行
str(foo)
以查看
foo
是如何存储的。也许它不是看起来的样子。它是一个data.frame,但你需要一个向量。使用
unlist(foo[“PM”,1:4])
Bryan:>str(foo)“data.frame”:2个obs。共有8个变量:(…)它与测试文件无关
read.table
返回一个data.frame。data.frame的行对应于观测单位,列对应于变量。通常情况下,您不会为这样的一个观察结果绘制变量,因此这个问题有点不寻常。@jfmoyen您需要正确使用R术语。那不是矩阵。它是一种特殊的列表,称为数据帧。和矩阵一样,它也有维度,但它仍然是一个列表。
> foo<-read.table("test.data",sep="\t")
> foo
           Th    Ba     Rb     La     Ce     Nd     Sm     Eu
PM     0.0813 6.049 0.5353 0.6139 1.6011 1.1892 0.3865 0.1456
V.MORB 0.3330 0.459 0.3560 0.2610 0.2240     NA 0.2030 0.1890
> rownames(foo)
[1] "PM"     "V.MORB"
> colnames(foo)
[1] "Th" "Ba" "Rb" "La" "Ce" "Nd" "Sm" "Eu"
> y<-c(1,2,3,4)
> plot(x=foo["PM",1:4],y=y)
Error in xy.coords(x, y, xlabel, ylabel, log) : 
  'x' and 'y' lengths differ
> foo["PM",1:4]
       Th    Ba     Rb     La
PM 0.0813 6.049 0.5353 0.6139
> y
[1] 1 2 3 4
> str(foo)
'data.frame':   2 obs. of  8 variables:
 $ Th: num  0.0813 0.333
 $ Ba: num  6.049 0.459
 $ Rb: num  0.535 0.356
 $ La: num  0.614 0.261
 $ Ce: num  1.601 0.224
 $ Nd: num  1.19 0
 $ Sm: num  0.387 0.203
 $ Eu: num  0.146 0.189
> plot(x=foo[1,1:4],y=y)
Error in xy.coords(x, y, xlabel, ylabel, log) : 
  'x' and 'y' lengths differ
 > plot(x=foo[1,1:2],y=y[1:2])   
 > plot(x=foo[1:2,1],y=y[1:2])