【发布时间】:2019-08-05 15:58:14
【问题描述】:
我有 2 个文本文件,例如 file1 和 file2。
文件1:
sample group
s1 A
s2 B
s3 A
s4 B
文件2:
ID s1 s2 s3 s4
ag 5 6 65 74
ah 7 2 63 54
ay 8 7 4 15
ak 3 9 14 24
我想从 2 个输入文本文件中创建一个新的文本文件,其中有 4 列。 2个输入文件之间的公共信息 是样本(在 file1 中是一列,在 file2 中样本是某些列的标题,包括 s1、s2、s3 和 s4)。 在输出文件中,我想转置 file2 中的所有列(第一列除外),因此第一列中的每个项目都重复 4 次(因为有 4 个样本)。所以第一列将是 4 个重复的 ID,第二列和第三列将是转置形式,最后一列将是每个样本的组
预期输出:
ID sample Value group
ag s1 5 A
ag s2 6 B
ag s3 65 A
ag s4 74 B
ah s1 7 A
ah s2 2 B
ah s3 63 A
ah s4 54 B
ay s1 8 A
ay s2 7 B
ay s3 4 A
ay s4 15 B
ak s1 3 A
ak s2 9 B
ak s3 14 A
ak s4 24 B
为了产生这样的输出,我在 python 中编写了以下代码,但它没有返回预期的输出。你知道怎么解决吗?
import pandas as pd
df1 = pd.read_csv("infile1.csv")
df2 = pd.read_csv("infile2.csv")
df3 = t(df2[, 2:])
result = pd.concat(df3, df1)
【问题讨论】: