我试图将数据操作为允许我轻松创建向量的表单,但是我遇到了一些问题。
我有像这样复制到R的数据:
为了简单起见,我只使用前十个数字,这样我就有以下内容:
1
4
1
7
1
1
3
4
5
2
我想创建一个包含这些数字的向量,如下所示:
greatVector <- c(1, 4, 1, 7, 1, 1, 3, 4, 5, 2)
然而,我只能通过手动输入每个逗号并按下退格键来正确定位下一个数字。
有没有更简单的方法来实现这一目标?提前谢谢。
答案 0 :(得分:4)
您可以尝试scan
scan('file.txt', what=numeric(), quiet=TRUE)
#[1] 1 4 1 7 1 1 3 4 5 2
答案 1 :(得分:4)
@akrun提到了scan
文件输入,但它也可以用来直接从控制台输入数据。在控制台键入此内容并复制由回车符或空格分隔的数据:
vec <- scan()
1: 1 # the numbers by the side are only printed upon data entry
2: 4
3: 1
4: 7
5: 1
6: 1
7: 3
8: 4
9: 5
10: 2
11: # an empty line terminates data entry
Read 10 items
> vec
[1] 1 4 1 7 1 1 3 4 5 2
如果what
参数设置为""
或character(0)
vec_a <- scan(what="")
答案 2 :(得分:0)
您可以尝试将R控制台中显示的文本复制并粘贴到read.table
指令中,如下所示:
greatVector<-unlist(read.table(text="1
4
1
7
1
1
3
4
5
2",header=F,sep="\n"))
> greatVector
V11 V12 V13 V14 V15 V16 V17 V18 V19 V110
1 4 1 7 1 1 3 4 5 2
正如@akrun所提到的,你也可以使用scan
指令,也可以复制和粘贴文本:
greatVector<-scan(text="1
4
1
7
1
1
3
4
5
2",what=numeric(),sep="\n")
> greatVector
[1] 1 4 1 7 1 1 3 4 5 2