import pandas as pd
df = pd.read_csv('degrees-that-pay-back.csv')
clean_df = df.dropna()
clean_df['Starting Median Salary'].idxmax()TypeError跟踪(最近一次调用)在() ->1 clean_df‘起薪中位数’..idxmax()
1帧/usr/local/lib/python3.7/dist-packages/pandas/core/nanops.py in _f(*args,**kwargs) 65 f_name = f.name.replace("nan","") 66 _f TypeError( ->67f“减少操作'{f_name}‘不允许此dtype”68 ) 69尝试:
TypeError:这个dtype不允许还原操作'argmax‘
发布于 2022-01-17 23:38:34
错误消息TypeError暗示您要传递给idxmax()的数据类型是错误的。
idxmax()工作在数值上,如果查看dataframe df.info()的数据类型,您会发现“起始中位数工资”的数据类型是一个对象,熊猫代表字符串(通常)。您将需要将数据类型转换为数字类型,例如float。
您可以通过移除“$”符号来完成这一任务。
df['Starting Median Salary'].replace(r'[\$]', '', regex=True)
删除值中的逗号。
df['Starting Median Salary'].replace(r'[,]', '', regex=True)
最后,将数据类型转换为浮点数。
df['Starting Median Salary'].astype('float')
现在idxmax()应该可以工作。
https://stackoverflow.com/questions/70745467
复制相似问题