我从nasdaq网站上检索到一个csv文件,其中包含一些列(股票代码、MarketCap…)。我使用pandas的read_csv获取数据帧。我的问题是无法将MarketCap列的格式转换为数字。 以下是MarketCap列的外观:
MarketCap
$5.54B
$526.85M
$28.41M
nan
nan
理想情况下,我想去掉$符号,把B转换成1'000'000'000,把M转换成1'000'000'000 pandas中的replace/to_replace函数在这里似乎不起作用。 我想按如下方式更新我的数据框:
MarketCap
5'540'000'000'000
526'850'000'000
28'410'000'000
nan
nan
(为了清楚起见,我使用了“作为千位分隔符”)。我不关心nan值,因此现在不能删除/忽略它
我尝试使用pandas的替换方法,如下所示:
df['MarketCap].replace(to_replace= ['B', 'M'], values= ['*1000000000', '*1000000'], inplace=True)
不幸的是,由于列是字符串格式,上面没有应用乘法
将^{} 与^{} 一起使用,然后将多个第一列转换为浮点数,第二列由^{} 映射:
相关问题 更多 >
编程相关推荐