如何用Python将DataFrame字符串列转换为数值列表
解决方法
直接使用pandas的apply方法结合列表推导式,就能把字符串列转换成数值列表:
import pandas as pd # 初始化你的DataFrame(如果已有可跳过) df = pd.DataFrame({'probabilities': ['0.001, 0.002, 0.003, 0.004']}) # 执行转换 df['probabilities'] = df['probabilities'].apply(lambda x: [float(num.strip()) for num in x.split(',')])
代码说明
x.split(','):将逗号分隔的字符串拆分为单个数字字符串组成的列表num.strip():去除每个数字字符串前后的空格(避免因空格导致转浮点数失败)float(num.strip()):把清理后的字符串转换为浮点数- 整个列表推导式最终生成由浮点数组成的列表
转换完成后,你就可以通过索引直接取值,比如df.probabilities[0][0]会返回0.001,完全符合需求。
内容的提问来源于stack exchange,提问作者CPDatascience
相关产品推荐
相关产品推荐

