Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将多个数据帧附加到带有标题的空数据帧_Python_Pandas - Fatal编程技术网

Python 如何将多个数据帧附加到带有标题的空数据帧

Python 如何将多个数据帧附加到带有标题的空数据帧,python,pandas,Python,Pandas,因此,我有多个数据帧df1、df2和df3,其中有8列和n行。 我想将它们附加到一个顶部有标题/标题的空数据框中。每次追加后我都想 创建一个空的空间 例如,最终输出为: Header/title c1 c2 c3 c4 c5 c6 c7 c8 data data data data data

因此,我有多个数据帧df1、df2和df3,其中有8列和n行。 我想将它们附加到一个顶部有标题/标题的空数据框中。每次追加后我都想 创建一个空的空间

例如,最终输出为:

                        Header/title                                
 c1     c2       c3      c4      c5       c6      c7     c8
data    data    data    data    data    data    data    data    
data    data    data    data    data    data    data    data    
                                
 c1     c2       c3      c4      c5       c6      c7     c8
data    data    data    data    data    data    data    data    
data    data    data    data    data    data    data    data    
                                
 c1     c2       c3      c4      c5       c6      c7     c8
data    data    data    data    data    data    data    data    
data    data    data    data    data    data    data    data

我会这样做:

import pandas as pd
from random import randint

#This is just to generate dataframes I'm assuming you do not need this part.
n=7
df1 = pd.DataFrame({"column{}".format(i):[randint(1,100) for x in range(n)] for i, v in enumerate(range(8),1)})
df2 = pd.DataFrame({"column{}".format(i):[randint(1,100) for x in range(n)] for i, v in enumerate(range(8),1)})
df3 = pd.DataFrame({"column{}".format(i):[randint(1,100) for x in range(n)] for i, v in enumerate(range(8),1)})

#this makes the empty space and the header rows (normally this works if you have the same amount of columns)
empty_space =  {d1:"" for d2, d1 in enumerate(df1.columns,0)}
col_col = {d1:d2 for d1, d2 in zip(df1.columns,df2.columns)}

#This appends data from df1 + df2 together (with your buffer space and headers, which are just values at this point)
output_df = df1.append(empty_space, ignore_index=True)
output_df = output_df.append(col_col, ignore_index=True)
output_df = output_df.append(df2, ignore_index=True)

#repeat for the 3 dataframe
col_col = {d1:d2 for d1, d2 in zip(output_df.columns,df3.columns)}
output_df = output_df.append(empty_space, ignore_index=True)
output_df = output_df.append(col_col, ignore_index=True)
output_df = output_df.append(df3, ignore_index=True)
这是一个严格的咨询输出,因为dfs在输出中没有作为单独的df进行维护。我不知道这个标题。我想我应该尝试一些涉及多重索引的方法。但是根据输出的不同,直接进入Excel、HTML、JSON(或其他)文件并将其直接放在那里可能会更容易

我希望这会有帮助