tho*_*mac 1 python dataframe pandas
我有一个名为'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
Run Code Online (Sandbox Code Playgroud)
我只想要价值> 1亿的市值,所以预期产量是:
Market Cap PE
AAN 3.25B 23.6
AAPL 819.30B 18.44
ACIW 2.63B 103.15
Run Code Online (Sandbox Code Playgroud)
我已经尝试将字母转换为适当的0而没有成功:
XLK['Market Cap'].replace('M','000000')
XLK.drop[XLK_quote['Market Cap'] < '100M'].index
Run Code Online (Sandbox Code Playgroud)
使用replace与regex=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
Run Code Online (Sandbox Code Playgroud)
等价
dct = dict(B='E9', M='E6')
num = pd.to_numeric(df.Market_Cap.replace(dct, regex=True), 'coerce')
df[num >= 100E6]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
74 次 |
| 最近记录: |