【发布时间】:2019-10-01 14:16:38
【问题描述】:
我有几个 - 比如说三个 - 包含另一个数据帧的不同行(有时它们可以重叠)的数据帧。所有三个 dfs 的列都是相同的。我现在想创建最终数据框,其中包含三个提到的数据框的所有行。此外,我需要为最终的 df 生成一列,其中包含包含该特定行的前三个 df 之一的信息。
以下示例
原始数据框:
original_df = pd.DataFrame(np.array([[1,1],[2,2],[3,3],[4,4],[5,5],[6,6]]), columns = ['label1','label2'])
三个 dfs 包含原始 df 的不同部分:
a = original_df.loc[0:1, columns]
b = original_df.loc[2:2, columns]
c = original_df.loc[3:, columns]
我想得到如下数据框:
final_df = pd.DataFrame(np.array([[1,1,'a'],[2,2,'a'],[3,3,'b'],[4,4,'c'],\
[5,5,'c'],[6,6,'c']]), columns = ['label1','label2', 'from which df this row'])
或者简单地使用整数来标记该行来自哪个df:
final_df = pd.DataFrame(np.array([[1,1,1],[2,2,1],[3,3,2],[4,4,3],\
[5,5,3],[6,6,3]]), columns = ['label1','label2', 'from which df this row'])
提前谢谢你!
【问题讨论】:
标签: python-3.x pandas numpy dataframe