python - 如何删除熊猫数据框中的特殊字符
问题描述
这是我正在使用的数据示例:
Reviews Size Installs Type Price Content Rating
0 159 19M 10,000+ paid $9.99 Everyone
1 967 14M 500,000+ paid $0.99 Everyone
2 87510 8.7M 5,000,000+ paid $1.9 Everyone
3 215644 25M 50,000,000+ paid $7.50 Teen
4 967 2.8M 100,000+ Free 0 Everyone
我想按价格对数据框进行排序,但由于“价格”列中值的数据类型是字符串,我无法对数据框进行排序,也无法转换值,因为字符“$”。有没有办法在不删除“$”的情况下成功删除它或对数据框进行排序?
我尝试了以下操作,看看是否可以对目标列进行排序:
df = pd.read_csv('googleplaystore.csv')
category = df['Price'].tolist()
c = list(set(category))
print (sorted(c))
解决方案
您可以使用str.replace
df['Price'] = df.Price.str.replace('$','')
df.sort_values('Price')
如果您不想删除$
可以使用的字符
df = df.iloc[df.Price.str.replace('$','').astype(float).sort_values().index,:]
df.reset_index(drop=True) # To reset index
但是您应该将该列转换为数字,以便能够对您的数据框进行数字操作。
推荐阅读
- performance - Unity 2019 动画师预览窗口非常滞后
- pitest - Pitest 没有运行 Kotlintest 测试
- html - div 元素有错误的视口
- shell - emacs shell-mode 不清除回车时的行
- php - 找不到正确的正则表达式进行解析
- unix - 使用 Cat 合并文件,忽略每个文件的最后一个 Byte
- android - 当同时从 2 个客户端调用 FirebaseFirestore delete() 函数时,两个客户端都会成功
- powershell - 使用 Powershell 的 PWA 站点的权限模式
- sql - 为没有写过书的作者选择名字
- python - 在类方法中重用函数文档字符串