作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在从 Excel 文件中抓取一些数据并在 python 中处理它。但是,列中的数据似乎有一些字符串,而我需要它们是整数。我正在尝试对数据进行排序,但它给了我错误,因为它正在尝试对字符串上的数字进行排序。
我正在尝试计算文件中每个年龄段犯下的谋杀案数量。
这是我这样做的代码。
xl = pd.ExcelFile('Murders.xlsx')
df = xl.parse('Sheet1')
#df = df[df["Perpetrator Age"].ne("Blanks")]
age = df['Perpetrator Age']
#print(df["Perpetrator Age"].dtype)
freq1 = collections.Counter(df['Perpetrator Age'].sort_values())
freq = [{'Perpetrator_Age': m, 'Freq': f} for m, f in freq1.items()]
file = open("MurderPerpAge.js", "w+")
file.write(json.dumps(freq))
file.close()
TypeError: '<' not supported between instances of 'int' and 'str'
[{"Perpetrator_Age": 15, "Freq": 5441}, {"Perpetrator_Age": 17, "Freq": 14196},...
最佳答案
我建议使用 pandas.astype('int16') 如下:
(int16 因为你正在处理年龄,它的范围非常有限)
df['Perpetrator Age'] = df['Perpetrator Age'].astype('int16')
df.sort_values(axis=0)
In [14]: df['Perpetrator Age'].astype('int16').sort_values(axis=0).head()
Out[14]:
83 15
62 15
64 15
27 15
48 17
Name: Perpetrator Age, dtype: int16
关于excel - 如何从 Excel 中的整数列中过滤字符串以在 Python 中处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56087179/
我是一名优秀的程序员,十分优秀!