python - 如何在 Python 中将字母符号与其值转换
问题描述
我有多个列,其中的值聚合为十亿或百万,并希望将它们全部转换为相同比例的数值。以下是我不成功的尝试:
df = pd.DataFrame({'a' : ['1.2B', '300M', 'NaN'],
'b' : ['NaN', '2.01B', '90000']})
def symbolToNum(x):
x.astype('string')
if x.str.strip().str[-1] = 'T' : return x.str[:-1].astype('float')*10^12
elif x.str.strip().str[-1] = 'B' : return x.str[:-1].astype('float')*10^9
elif x.str.strip().str[-1] = 'M' : return x.str[:-1].astype('float')*10^6
elif x.str.strip().str[-1] ='K' : return x.str[:-1].astype('float')*10^3
else : return x.astype('float')
dollarcols =['a', 'b']
df[dollarcols] = df[dollarcols].apply(lambda x: symbolToNum(x))
解决方案
推荐阅读
- django - 如何将值从 get_queryset() 传递到 get_context_data()
- html - 如何在使用 ng-repeat 时在 css 中应用一个类
- python - python打开一个包含整数的文件
- go - 从golang调用时无法从调用GetConfiguration获取itemCategory信息
- python - Predict_proba() 的随机森林分类器结果与 predict() 不匹配?
- gcc - RISC-V 压缩指令:可以强制编译器在 32 位边界上对齐 32 位指令吗?
- r - 在 R 自动化中将数据附加到具有当前日期的现有数据
- vb.net - 如何在 VB.NET 中循环遍历列表
- pointers - 没有返回关键字的对象返回
- powershell - 如何将 prnmngr 的输出转换为自定义对象?