Python 无法在GroupBy之后重命名列
我正在做以下工作:Python 无法在GroupBy之后重命名列,python,pandas,Python,Pandas,我正在做以下工作: # Load date data = pd.read_csv('C:/Users/user/Desktop/STOCKS.txt', keep_default_na=True, sep='\t', nrows=5) # Convert dates from object columns to datetime columns data['DATE'] = pd.to_datetime(data_orders['DATE']) print(data.columns) # I
# Load date
data = pd.read_csv('C:/Users/user/Desktop/STOCKS.txt', keep_default_na=True, sep='\t', nrows=5)
# Convert dates from object columns to datetime columns
data['DATE'] = pd.to_datetime(data_orders['DATE'])
print(data.columns)
# Index(['COUNTRY_ID', 'STOCK_ID', 'DATE', 'STOCK_VALUE'], dtype='object')
# Count of stock per country per day
data_agg= data.groupby(['COUNTRY_ID'], as_index=False).agg({'DATE': 'count'})
print(data_agg.columns)
# Index(['COUNTRY_ID', 'DATE'], dtype='object')
# Rename count column
data_agg.rename({'DATE': 'Count'}, inplace=True)
print(data_agg.columns)
# Index(['COUNTRY_ID', 'DATE'], dtype='object')
正如您在上面最后几行看到的,我尝试在groupby之后重命名聚合列,但由于某些原因,这不起作用,我仍然获取此列的名称日期,而不是计数
如何修复此问题?需要columns关键字,如果忽略它,请重命名并尝试更改索引值:
data_agg.rename(columns={'DATE': 'Count'}, inplace=True)
另一种解决方案是删除为_index=False并与以下一起使用:
需要columns关键字,如果忽略它,请重命名并尝试更改索引的值:
data_agg.rename(columns={'DATE': 'Count'}, inplace=True)
另一种解决方案是删除为_index=False并与以下一起使用:
我认为这解决了你的问题
data_agg=data_agg.rename(columns={'Date':'Count'})
我认为这解决了你的问题
data_agg=data_agg.rename(columns={'Date':'Count'})
是的,谢谢你的投票。我没有注意到这个细节,在使用这个的时候我必须指定参数列。啊!没有看到asindex=False。是的,就是这样,谢谢投票。我没有注意到这个细节,在使用这个的时候我必须指定参数列。啊!没有看到asindex=False。可湿性粉剂
data_agg= data.groupby('COUNTRY_ID')['DATE'].count().reset_index(name='Count')
print (data_agg)
COUNTRY_ID Count
0 1 2
1 3 3
2 4 5
data_agg=data_agg.rename(columns={'Date':'Count'})