Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.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 ';取消纵火';写入Excel时的多索引_Python_Excel_Pandas - Fatal编程技术网

Python ';取消纵火';写入Excel时的多索引

Python ';取消纵火';写入Excel时的多索引,python,excel,pandas,Python,Excel,Pandas,我有一个带有多索引的熊猫数据帧,默认情况下,当打印到屏幕上时,它将“稀疏”输出,这样就不会重复更高级别的索引。例如: 稀疏的: 我可以将其更改为“unsparse”,如下所示: 但是,df.to_excel(writer)不支持此选项,它将始终使用合并的单元格将索引写为稀疏。有没有什么方法可以让这篇文章以“非粗俗”的方式写出优秀的文章?或者,我可以写入csv并将其导入excel,因为csv始终是“非垃圾邮件”,但这有点烦人。在写入excel之前尝试应用reset\u index() 例如:

我有一个带有多索引的熊猫数据帧,默认情况下,当打印到屏幕上时,它将“稀疏”输出,这样就不会重复更高级别的索引。例如:

稀疏的:

我可以将其更改为“unsparse”,如下所示:


但是,df.to_excel(writer)不支持此选项,它将始终使用合并的单元格将索引写为稀疏。有没有什么方法可以让这篇文章以“非粗俗”的方式写出优秀的文章?或者,我可以写入csv并将其导入excel,因为csv始终是“非垃圾邮件”,但这有点烦人。

在写入excel之前尝试应用
reset\u index()

例如:

first  second
bar    one      -0.008620
       two       1.688653
baz    one      -0.145099
       two       0.870981
foo    one       2.544494
       two       0.935468
qux    one      -1.868521
       two      -0.118242
打印(s.重置索引())


现在您可以指定
merge\u cells=False

例如:

arrays = [['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux'],
['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two']]

df=pd.DataFrame(np.random.randn(8, 4), index=arrays)

df.to_excel('example.xlsx',merge_cells=False)

即使你前后换位?df.T.reset_index().T.to_excelah好的,这确实有效,很抱歉,我没有意识到这不合适如果你使用df.reset_index().set_index(“名字”),那么你甚至不会得到ints/row numsOk这一恼人的额外列,很高兴它有效;)。了解set_索引很好。merge_cells=False的问题是它不稀疏索引和列。我认为最好保持稀疏的列。
arrays = [['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux'],
['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two']]

df=pd.DataFrame(np.random.randn(8, 4), index=arrays)

df.to_excel('example.xlsx',merge_cells=False)