【发布时间】:2022-08-10 18:28:29
【问题描述】:
我有一个 .txt 文件 (output.txt),我想从中使用特定的字符串。所需的字符串从位置 13 开始,一直到行尾。我想将它们保存到数据框的不同列中。
我创建了一个包含 4 列的空数据框:
cameras = pd.DataFrame(columns=[\'name\', \'altitude\', \'latitude\', \'longitude\'])
我试图将字符串分配给不同的列
with open(\'output.txt\',\'r\') as f:
for line in f.readlines():
if line.startswith(\'name\'):
cameras[\'name\'] = line[13:-1]
if line.startswith(\'NN\'):
cameras[\'altitude\'] = line[13:-1]
if line.startswith(\'lat\'):
cameras[\'latitude\'] = line[13:-1]
if line.startswith(\'lon\'):
cameras[\'longitude\'] = line[13:-1]
但显然数据框仍然是空的。我想这是一个更容易解决的问题。 提前致谢!
-
你应该看看
read_fwf。将文件读取为两列,将索引设置为index // 4并进行透视。在您的代码中,您不会追加新行,而是一遍又一遍地覆盖同一行。
标签: python pandas string dataframe readlines