所以我有一个csv文件的文件夹,我想迭代来创建一个数据帧。我已经能够迭代并创建数据帧,每个csv的名称作为索引,但我无法做的一件事是所有的csv都有一个单元格,A2表示“纬度:xxxxxx “我想创建一个名为latitude的列,它包含每个csv的所有这些不同的lat值。我该怎么做呢?
我在迭代csv文件方面有什么:
for fn in os.listdir('C:\\Users\\joshs_000\\Desktop\\WindProject\\BayAreaData'):
if fn.endswith(".csv"):
df2 = pd.read_csv('C:\\Users\\joshs_000\\Desktop\\WindProject\\BayAreaData\\' + fn, skiprows = 3)
df2 = df2['power (MW)']
df1[fn[:5]] = df2
每个数据帧在单元格A1和A2中包含单个单元格中的纬度和经度,下面是我复制的表格,因此是跳数。我希望能够将lat和lon引入数据帧,但我不确定如何使用Pandas分析单个单元格。
答案 0 :(得分:0)
我认为你不能用一个pandas命令来解决这个问题。最简单的解决方案就是为经度/纬度数据创建单独的数据帧。有点像:
import csv
row_list = []
for fn in os.listdir('C:\\Users\\joshs_000\\Desktop\\WindProject\\BayAreaData'):
if fn.endswith(".csv"):
with open(fn, 'r', newline='') as f:
reader = csv.reader(f, delimiter=',')
row_list.append([fn] + next(reader))
df_location = pd.DataFrame(row_list, columns=['filename', 'longitude', 'latitude'])
df_location.set_index(['filename'])
此数据框现已编入索引文件名,因此将数据添加到原始数据框应该很容易。