python - 将字符转换为数据框中的数值

标签 python pandas dataframe

<分区>

我有一个名为“XLK”的 df:

       Market Cap   PE  
AAN     3.25B      23.6 
AAPL    819.30B    18.44    
ACFN    6.18M      2.1  
ACIW    2.63B      103.15   

我只想要值(value) > 1 亿的市值,所以预期输出是:

       Market Cap   PE  
AAN     3.25B      23.6 
AAPL    819.30B    18.44    
ACIW    2.63B      103.15   

我已经尝试将字母转换为适当的 0 但没有成功:

XLK['Market Cap'].replace('M','000000')
XLK.drop[XLK_quote['Market Cap'] < '100M'].index

最佳答案

replaceregex=True 结合使用,并使用模拟科学记数法的替换字符串。然后使用 astype(float)pd.to_numeric

df[df.Market_Cap.replace(dict(B='E9', M='E6'), regex=True).astype(float) >= 100E6]

     Market_Cap      PE
AAN       3.25B   23.60
AAPL    819.30B   18.44
ACIW      2.63B  103.15

等价

dct = dict(B='E9', M='E6')
num = pd.to_numeric(df.Market_Cap.replace(dct, regex=True), 'coerce')
df[num >= 100E6]

关于python - 将字符转换为数据框中的数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45472478/

相关文章:

python - Firebase/Google Cloud Function 中 HTTP 请求的多次返回

python - 使用 Flask-Security 在代码中修改密码

python - 使用 read_pickle 将 json_pickle(d) 推文读取到数据帧时发生 KeyError

python - 合并2个以上的python pandas数据框

python - 如何加载重载方法

python - 使用 python pandas 读取 sharepoint excel 文件

python - 如何改进 Python 中的这个循环以提高速度

python - 绘制 Pandas 数据框列之间的关系

r - 将数据框转换为R中的列表

python - 这个算法的 Big-O 性能如何?我通常如何解决这个问题?