为了将每个站点的数据整合到一个文件中,且按照文件名为点名,以对应经纬度进行绘图,写了以下代码
import pandas as pd
import os
point_df = pd.DataFrame()
file=pd.read_csv("G:/Python_/sewdi_12/pointlocation.csv")
定义一个空的表格,pointlocation.csv中有点名point_name,和每个点对应的经度和纬度。为了将所有点的数据识别对应的point_name填进新的表格里
i=568
j=0
while i < 16919:
data_path = "G:/Python_/sewdi_12/sewdi_7"
if os.path.exists(data_path + "/" + str(i) + ".csv"):
data_1 = pd.read_csv(data_path + "/" + str(i) + ".csv")
i代表点名,范围为568到16919;j代表新表中的j行。每个点文件均在data_path的路径下。if语句为判断文件名是否存在,因为i是递增的,但是有些点不存在。
for index, row in file.iterrows():
point_df.loc[j,'point_name'] = i
point_df.loc[j, 'lat'] = file.loc[i, 'lat']
point_df.loc[j, 'lon'] = file.loc[i, 'lon']
point_df.loc[j, 'sewdi'] = data_1['EWD_scale_7_calculated_index'].loc[0]
print(str(i) + '成功')
j += 1
i += 1
新的数据表格中第一列命名为point_name即点名,也是data_path下的文件名;第二列第三列为经纬度数据,从file中提取;第四列为所需数据,从data_1中提取
point_df.to_csv("G:/Python_/sewdi_12/sewdi_lat_lon/sewdi_lat_lon.csv")