gpt4 book ai didi

python - Pandas 多索引到 csv 文件

转载 作者:行者123 更新时间:2023-11-28 18:02:46 25 4
gpt4 key购买 nike

如果我将多索引数据帧输出到 csv,为什么我的第一个索引会重复?

我的数据框:

In [1]: \
import numpy as np
import pandas as pd
df = pd.DataFrame({
'index1': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
'index2': [1, 2, 3, 4, 1, 2, 3, 4],
'column1': np.random.randint(2, size=8),
'column2': np.random.randint(2, size=8),
'column3': np.random.randint(2, size=8)
}).set_index(['index1', 'index2'])

Out[2]: \
print(df)
column1 column2 column3
index1 index2
A 1 1 1 1
2 0 1 1
3 1 0 1
4 0 0 0
B 1 0 1 0
2 1 1 0
3 0 0 0
4 1 1 1

以下是我将数据帧输出为 csv 文件时得到的结果。

输出(csv 文件):

                 column1   column2 column3
index1 index2
A 1
A 2
A 3
A 4
B 1
B 2
B 3
B 4

我想以与第一个代码片段中的数据框完全相同的格式输出 csv 文件。

最佳答案

第一个索引是重复的,因为那是数据在引擎盖下的样子,pandas 只是以这种方式格式化它以使其更容易阅读。当您调用“to_csv”时,将输出原始数据。要执行您想要的操作,您可以重置索引,然后将该列中的重复值替换为空白。

df.reset_index(inplace=True)
df.loc[df['index1'].duplicated(), 'index1'] = ''
df.to_csv('mycsv.csv', index=False)

关于python - Pandas 多索引到 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55050841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com