解决Pandas报错DataFrame无str属性 按分号拆分单列DataFrame为两列
Pandas单列DataFrame按分号拆分多列解决方案
报错原因
str是Pandas Series对象 独有的字符串处理方法,你当前使用的px_brice2是形状为(555,1)的DataFrame对象,直接调用str属性自然会触发报错。
正确操作步骤
- 先提取DataFrame中唯一的一列转为Series对象,两种通用写法二选一即可:
- 按默认列名取值:
px_brice2[0](无表头导入的DataFrame默认第一列的列名为整数0) - 按位置取第一列:
px_brice2.iloc[:, 0]
- 按默认列名取值:
- 调用拆分方法,可选添加
n=1参数限制只拆分第一个分号,避免内容本身包含分号时拆分出多余列:
# 拆分得到两列DataFrame split_result = px_brice2.iloc[:, 0].str.split(';', n=1, expand=True) # 自定义新生成的两列的列名,可按需修改 split_result.columns = ['first_col', 'second_col']
验证操作
执行print(split_result.shape),输出(555, 2)即代表拆分成功。
内容的提问来源于stack exchange,提问作者HugoLny
相关产品推荐
相关产品推荐

