我有很多文本文件。它们都有如下的结构:
textfile.txt
id|name|dataType
5|aa|String
4|bb|DateTime
|dd|DateTime
1|cc|DateTime
3|dd|DateTime
我想一个接一个地读取所有这些文本文件,并根据它们的id重新排序,没有id的行应该被排除在外。之后,我想得到以下内容:
id|name|dataType
1|cc|DateTime
3|dd|DateTime
4|bb|DateTime
5|aa|String
有什么python的方法可以做到这一点吗?
您可以使用:
(pd.read_csv('textfile.txt', sep='|')
.loc[lambda d: d['id'].notna()]
.convert_dtypes()
.sort_values(by='id')
.to_csv('out.txt', sep='|', index=False)
)
out.txt
:
id|name|dataType
1|cc|DateTime
3|dd|DateTime
4|bb|DateTime
5|aa|String