在 Pandas 中读取、选择和重新排列列
Posted
技术标签:
【中文标题】在 Pandas 中读取、选择和重新排列列【英文标题】:Read, select and rearrange columns in Pandas 【发布时间】:2019-05-09 15:20:06 【问题描述】:我有一个最佳实践问题。今天我学习了如何在 Pandas 中读写文件。如何创建表格,如何添加列和行以及如何删除它们。
我有一个excel文件,内容如下:
我创建一个新列“Price_average”,平均“Price_min”和“Price_max”并将其输出为 output_1.xlsx
#!/usr/bin/env python3
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import xlrd
df = pd.read_excel('original.xlsx')
print (df)
df['Price_average'] = (df.Price_min + df.Price_max)/2
df.to_excel('output_1.xlsx', sheet_name='sheet1', index=False)
print (df)
然后,我使用以下命令支持“Price_min”和“price_max”列:
df = df.drop(['Price_min', 'Price_max'], axis=1)
假设我现在想创建这个表:
我可以删除“Age”和“Price_average”,然后将“email”换成“brand”,或者我可以简单地选择要创建新电子表格的列吗?
最好和最干净的方法是什么?从文件中减去不需要的列并重新排列,如果需要重命名列或选择并选择所需的列并以正确的顺序使用它们创建一个新文件。有什么建议?最干净的解决方法是什么?
【问题讨论】:
【参考方案1】:你可以试试这个,
selected = df[['Age', 'Price_average', 'Email', 'Brand']]
如果要更改列名,
renamed = selected.rename(columns='Brand': 'brand', 'Email':'email')
【讨论】:
您是否也可以在不使用 .rename 的情况下发布您的第一个回复?谢谢 你能把前一个贴在下面作为单独的解决方案吗?谢谢男人以上是关于在 Pandas 中读取、选择和重新排列列的主要内容,如果未能解决你的问题,请参考以下文章