连接数据框的行或列

Concatenating Rows or columns of a dataframe

使用 R:

我取了多串字母:

Orig1 - ABCDE

Orig2 - FGHIJ

Orig3 - KLMNO

我用 strsplit 拆分了那些字母串:

Orig1 - A B C D E

Orig2 - F G H I J

Orig3 - K L M N O

然后我将每个字母放在数据框中自己的行和列中。每个字符串在其自己的行中,每个后续字母在其自己的列中:

RowName   V1 V2 V3 V4 V5

Orig1     A  B  C  D  E

Orig2     F  G  H  I  J

Orig3     K  L  M  N  O

根据对这些字母串的各种分析,我对这些字母串进行了操作,得出了多个更改后的字符串:

RowName   V1 V2 V3 V4 V5

Altered1  A  G  H  N  E

Altered2  F  B  C  I  O

Altered3  K  L  M  D  J

我不知道如何将更改后的字符串从数据框中折叠出来。我需要将其转换为可导出的 .fasta 文件,并将行名作为后续序列名称。

粘贴在数据框中不起作用,所以我尝试使用另一个线程中类似主题的一些代码:

ldf = lapply(as.list(1:dim(df)[1]), function(x) df[x[1],])

这将每个都放入自己的列表中,然后我可以使用粘贴,但我发现输出令人困惑,无法尝试导出。

如有任何帮助,我们将不胜感激。

如果我们想要按行 pasteo'n

library(dplyr)
library(stringr)
reduce(select(df, -1), str_c, sep="")
#[1] "AGHNE" "FBCIO" "KLMDJ"

日期

df <- structure(list(RowName = c("Altered1", "Altered2", "Altered3"
), V1 = c("A", "F", "K"), V2 = c("G", "B", "L"), V3 = c("H", 
"C", "M"), V4 = c("N", "I", "D"), V5 = c("E", "O", "J")),
class = "data.frame", row.names = c(NA, 
-3L))

我不确定你是否想要这个

> do.call(paste,c(df[-1],sep = ""))
[1] "AGHNE" "FBCIO" "KLMDJ"

数据

df <- structure(list(RowName = c("Altered1", "Altered2", "Altered3"
), V1 = c("A", "F", "K"), V2 = c("G", "B", "L"), V3 = c("H", 
"C", "M"), V4 = c("N", "I", "D"), V5 = c("E", "O", "J")), class = "data.frame", row.names = c(NA, 
-3L))

> df
   RowName V1 V2 V3 V4 V5
1 Altered1  A  G  H  N  E
2 Altered2  F  B  C  I  O
3 Altered3  K  L  M  D  J