我正在尝试使用 Python 将 转换text
为dataframe
。
样本文本: 'This is \nsample text\n\nName|age\n--|--\n1.abc|45\n2.xyz|34'
最终期望输出:
我为实现上述输出所遵循的步骤如下:
- 将文本分成多行并将其分配给变量:我曾尝试使用它
print()
来处理该文本formatted_text = print('This is \nsample text\n\nName|age\n--|--\n1.abc|45\n2.xyz|34')
,但无法将其分配为print()
返回NoneType
,因此这里出现错误。
此步骤后的期望输出:
This is
sample text
Name|age
--|--
1.abc|45
2.xyz|34
- 使用上面
line break text
存储在variable
一个 CSV 文件中的内容,用分隔符读取,|
创建一个数据框:我一直在考虑将其处理为pd.read_csv(formatted_text,sep='|', skipinitialspace=True)
此步骤后的期望输出:
我之前尝试在 SO 帖子中解释这个问题,但我想我解释得不太好,所以帖子被关闭了。我希望这次我能解释我的问题。这可能是一个愚蠢的任务,但我已经坚持了很长时间,如果能得到任何帮助,我将不胜感激。
您可以先拆分行,然后拆分列,然后将其提供给
DataFrame
构造函数,也可以选择fillna
使用''
:或者,使用
Series
和str.split
:输出:
可能的解决方案:
输出:
要拆分列,我们可以使用
str.split
afterread_csv
:输出:
我们可以将每一行拆分
|
成一个列表,并从中创建一个数据框:输出: