R 每隔一行将文件中的行引入另一个文件
我有一个样本数据集,如下所示:R 每隔一行将文件中的行引入另一个文件,r,bash,shell,R,Bash,Shell,我有一个样本数据集,如下所示: SampleName1 SampleName2 SampleName3 SampleName4 SampleName5 0101010101010 0101010101010 0101010101010 0101010101010 0101010101010 SampleName1 0101010101010 SampleName2 0101010101010 SampleName3 0101010101010 SampleName4 010101010101
SampleName1
SampleName2
SampleName3
SampleName4
SampleName5
0101010101010
0101010101010
0101010101010
0101010101010
0101010101010
SampleName1
0101010101010
SampleName2
0101010101010
SampleName3
0101010101010
SampleName4
0101010101010
SampleName5
0101010101010
另一个数据集包含每个样本的信息,如下所示:
SampleName1
SampleName2
SampleName3
SampleName4
SampleName5
0101010101010
0101010101010
0101010101010
0101010101010
0101010101010
SampleName1
0101010101010
SampleName2
0101010101010
SampleName3
0101010101010
SampleName4
0101010101010
SampleName5
0101010101010
我希望我的新数据如下所示:
SampleName1
SampleName2
SampleName3
SampleName4
SampleName5
0101010101010
0101010101010
0101010101010
0101010101010
0101010101010
SampleName1
0101010101010
SampleName2
0101010101010
SampleName3
0101010101010
SampleName4
0101010101010
SampleName5
0101010101010
提前感谢。使用awk,您可以执行以下操作:
awk 'FNR==NR{a[++i]=$0;next} {print a[FNR] RS $0}' file1 file2
SampleName1
0101010101010
SampleName2
0101010101010
SampleName3
0101010101010
SampleName4
0101010101010
SampleName5
0101010101010
使用awk,您可以执行以下操作:
awk 'FNR==NR{a[++i]=$0;next} {print a[FNR] RS $0}' file1 file2
SampleName1
0101010101010
SampleName2
0101010101010
SampleName3
0101010101010
SampleName4
0101010101010
SampleName5
0101010101010
这应该起作用:
paste -d'\n' file1 file2
使用您的数据:
kent$ paste -d'\n' f1 f2
SampleName1
0101010101010
SampleName2
0101010101010
SampleName3
0101010101010
SampleName4
0101010101010
SampleName5
0101010101010
这应该起作用:
paste -d'\n' file1 file2
使用您的数据:
kent$ paste -d'\n' f1 f2
SampleName1
0101010101010
SampleName2
0101010101010
SampleName3
0101010101010
SampleName4
0101010101010
SampleName5
0101010101010
在R中,您可以尝试:
f1<-read.table(text="SampleName1
SampleName2
SampleName3
SampleName4
SampleName5",stringsAsFactors=F)
f2<-read.table(text="0101010101010
0101010101010
0101010101010
0101010101010
0101010101010",colClasses="character")
n <- seq_along(f1[,'V1'])
data.frame(f3=unlist(lapply(n, function(x)c(f1[x,'V1'],f2[x,'V1']))))
在R中,您可以尝试:
f1<-read.table(text="SampleName1
SampleName2
SampleName3
SampleName4
SampleName5",stringsAsFactors=F)
f2<-read.table(text="0101010101010
0101010101010
0101010101010
0101010101010
0101010101010",colClasses="character")
n <- seq_along(f1[,'V1'])
data.frame(f3=unlist(lapply(n, function(x)c(f1[x,'V1'],f2[x,'V1']))))
完美的很好!完美的很好!