如何使用熊猫数据框将数据框值的每一列逐一添加到新工作表中

我是 python pandas 的新手并且有一些疑问。我想将数据框的每一列存储在 excel 的每个新工作表中。


任何人都可以帮助我实现它。我将代码片段放在下面供您参考。


df.columns


Index(['PassengerId', 'Survived', 'Pclass', 'Name', 'Sex', 'Age', 'SibSp',

       'Parch', 'Ticket', 'Fare', 'Cabin', 'Embarked'],

      dtype='object')


for i in df.columns:

    print(df[i])

    with pd.ExcelWriter('output1.xlsx') as writer:  

        df.to_excel(writer, sheet_name='Sheet'+i+')


慕哥6287543
浏览 137回答 2
2回答

慕虎7371278

问题是您没有在每个点都对数据框进行切片。利用 :with pd.ExcelWriter('output.xlsx') as writer:    for number,each_col in enumerate(df.columns,1):        df[[each_col]].to_excel(writer,f'Sheet{number}',index=False)或者如果您希望 shetname 成为列名。with pd.ExcelWriter('output.xlsx') as writer:    for each_col in df.columns:        df[[each_col]].to_excel(writer,f'Sheet{each_col}',index=False)

慕码人2483693

这应该工作:import pandas as pd# created a dummy row in a new dataframe as per the column list you shareddf2 = pd.DataFrame(['Dummy_PassengerId1', 'Dummy_Survived1', 'Dummy_Pclass1', 'Dummy_Name1', 'Dummy_Sex1', 'Dummy_Age1', 'Dummy_SibSp1',       'Dummy_Parch1', 'Dummy_Ticket1', 'Dummy_Fare1', 'Dummy_Cabin1', 'Dummy_Embarked1']).T# appended the appropriate headers to the dataframedf2.columns = ['PassengerId', 'Survived', 'Pclass', 'Name', 'Sex', 'Age', 'SibSp',       'Parch', 'Ticket', 'Fare', 'Cabin', 'Embarked']以上两个步骤只是创建一个包含一行和所需标题的虚拟数据框。下面一行将满足您的要求(据我所知):“将数据框的每一列写入 excel 中的新工作表”。希望这能澄清。with pd.ExcelWriter('output1.xlsx') as writer:    for col in df2.columns:              df2[col].to_excel(writer, sheet_name='Sheet_'+col)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python