【发布时间】:2019-07-03 03:10:44
【问题描述】:
我有一个包含 45 列和 1000 行的数据框。我的要求是创建一个 Excel 表,其中包含每列的前 2 个值及其百分比(假设 col 1 的值 'python' 出现 500 次,百分比应为 50)
我用过:
writer = pd.ExcelWriter('abc.xlsx')
df = pd.read_sql('select * from table limit 1000', <db connection sring>)
column_list = df.columns.tolist()
df.fillna("NULL", inplace = True)
for obj in column_list:
df1 = pd.DataFrame(df[obj].value_counts().nlargest(2)).to_excel(writer,sheet_name=obj
writer.save()
这会将输出写入同一文档的不同 Excel 选项卡中。我需要将它们按以下格式放在一张纸上:
Column Name Value Percentage
col1 abc 50
col1 def 30
col2 123 40
col2 456 30
....
让我知道任何其他功能以获取此输出。
【问题讨论】: