从单个数据帧创建多个数据帧

时间:2020-03-20 05:24:16

标签: python dataframe

click here to see dataframe

我有一个包含1738行的数据框。我要创建由这些行组成的1738个数据帧,并保持列标题相同。我该怎么办?

2 个答案:

答案 0 :(得分:0)

如果原始数据帧为data

column_list = data.columns.tolist()                                   #get column names as list
for index,row in data.iterrows():                                     #iterate through rows
    new_df = pd.DataFrame(columns=column_list)                        #make new dataframe
    new_df = new_df.append(pd.Series(row,index = column_list),ignore_index = True) #insert the row in newdataframe
    new_df.to_excel(str(index)+".xlsx")                               #output newdf as rownumber

这应该可以完成工作。

答案 1 :(得分:0)

您可以使用 DataFrame.copy()非常容易地做到这一点。

副本将具有相同的结构,并且将保留标头的所有数据类型

让我们的日子 df 是原始数据框。因此,要创建数据框副本:

df_copy = df.copy()

如果 deep == True ,则将创建一个不同的数据框副本,并且对原始或复制的数据框所做的任何更改均不会影响其中的任何一个。 默认情况下,深度= True。

但是,如果 deep == False ,则仅创建对数据框的引用。这意味着对原始数据帧所做的任何更改都将反映到复制的数据帧中,反之亦然。

有关参考,请阅读文档 https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.copy.html