2014-02-19 44 views
1

我有样品的数据集,看起来像这样:从文件介绍行到另一个文件每隔一行

SampleName1 
SampleName2 
SampleName3 
SampleName4 
SampleName5 

,并与每个样本信息的另一个数据集,看起来像这样:

0101010101010 
0101010101010 
0101010101010 
0101010101010 
0101010101010 

我想我的新的数据看起来像这样:提前

SampleName1 
0101010101010 
SampleName2 
0101010101010 
SampleName3 
0101010101010 
SampleName4 
0101010101010 
SampleName5 
0101010101010 

感谢。

回答

2

使用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 
+0

完美!很棒! – JM88

+0

不客气,很高兴它解决了。 – anubhava

1

这应该工作:

paste -d'\n' file1 file2 

与您的数据:

kent$ paste -d'\n' f1 f2 
SampleName1 
0101010101010 
SampleName2 
0101010101010 
SampleName3 
0101010101010 
SampleName4 
0101010101010 
SampleName5 
0101010101010 
1

在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'])))) 

这里是结果:

   f3 
1 SampleName1 
2 0101010101010 
3 SampleName2 
4 0101010101010 
5 SampleName3 
6 0101010101010 
7 SampleName4 
8 0101010101010 
9 SampleName5 
10 0101010101010 
相关问题