繁体   English   中英

读入.txt文件,转换为pandas dataframe,但空格分隔值因空格数而异

[英]read in .txt file , transform into pandas dataframe, but spaces seperating value vary in number of spaces

这个脚本读入一个txt文件并创建一个df,但是'sep'参数我想处理可能被1个或更多空格分隔的值,所以当我运行上面的脚本时,我得到了很多带有NaN的列。

代码:

df = pd.read_csv(data_file,header = None, sep=' ')

示例 txt 文件

blah blahh    bl
blah3 blahhe      ble

我希望只有 3 列所以我得到

Col_a  col_b   col_c
blah   blahh    bl
blah3  blahhe   ble

您可以使用正则表达式作为分隔符:

pd.read_csv(data_file, header=None, delimiter=r"\s+", names='Col_a Col_b Col_c'.split(' '))

或者您可以使用delim_whitespace=True参数,它比正则表达式更快:

pd.read_csv(data_file, header=None, delim_whitespace=True, names='Col_a Col_b Col_c'.split(' '))

参考: 如何在 pandas 中读取具有空格分隔值的文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM