pandas读取第一个txt包含站点纬度经度和站名四列第二个txt包含按站点和数值共五列读取第一个文件的站点对应的经度度输入第二个文件中生成新的txt
文件,包含站点、经度、纬度、站名和数值五列。
假设第一个txt文件名为"site_info.txt",第二个txt文件名为"data_info.txt",生成的新txt文件名为"merged_info.txt"。
代码如下:
import pandas as pd
# 读取第一个txt文件
site_info = pd.read_csv('site_info.txt', sep='\t', header=None, names=['site', 'lat', 'lon', 'name'])
# 读取第二个txt文件
data_info = pd.read_csv('data_info.txt', sep='\t', header=None, names=['site', 'value1', 'value2', 'value3', 'value4'])
# 根据站点合并两个DataFrame
merged_info = pd.merge(site_info, data_info, on='site')
# 保存合并后的结果到新的txt文件
merged_info.to_csv('merged_info.txt', sep='\t', index=False)
解释:
- 使用pandas的read_csv函数读取txt文件,设置分隔符为制表符("\t"),并指定文件中没有列名,需要手动指定列名。
- 使用pandas的merge函数将两个DataFrame按照站点进行合并,指定按照站点列进行合并。
- 使用pandas的to_csv函数将合并后的结果保存到新的txt文件中,设置分隔符为制表符,并指定不保存行索引
原文地址: https://www.cveoy.top/t/topic/cvTZ 著作权归作者所有。请勿转载和采集!