python通过索引更改dataframe中的列名

第一种方法

pricedata.loc[:, 'price'] = pricedata.loc[:, '30%利润'].rename('price')

这种方法首先使用loc方法选择"30%利润"列,然后使用rename方法将其重命名为"price"。但这只是创建了一个新的Series对象,并没有真正改变原始的pricedata DataFrame。接下来,这个新的Series对象被赋值给pricedata DataFrame中的"price"列。如果pricedata中已经存在"price"列,它的值将被新的Series对象覆盖;如果不存在,将会添加一个新的"price"列。需要注意的是,原始的"30%利润"列仍然存在于pricedata中。

第二种方法

pricedata = pricedata.loc[:,['sku','site','30%利润']] 
pricedata.rename(columns= {'30%利润':'price'}, inplace=True)

这种方法首先使用loc方法选择'sku', 'site', 和'30%利润'三列,然后使用rename方法将"30%利润"列重命名为"price"。这种方法会直接修改原始的pricedata DataFrame,并且"30%利润"列将被完全替换为"price"列。

总结

  • 第一种方法会在pricedata DataFrame中添加或覆盖"price"列,但不会删除"30%利润"列。
  • 第二种方法会直接将"30%利润"列重命名为"price",并且只保留'sku', 'site', 和'price'三列。

你可能感兴趣的:(python,pandas,开发语言)