2015-11-19 67 views
1

所以我有一個csv文件的文件夾,我想通過它來創建數據框。我已經能夠遍歷並創建每個csv的名稱作爲索引的數據框,但是我無法做的一件事是所有的csv都有一個單元格A2,它表示「latitude:xxxxxx 「我想創建一個名爲latitude的列,其中包含每個csv的所有這些不同的緯度值。我會如何去做這件事?從Excel分析單個單元格到數據框熊貓

我有什麼對通過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,在單個細胞的緯度和經度,下方是我複製過表,因此是skiprows。我期望能夠獲得緯度和經度,但我不確定如何使用Pandas分析單個單元。

+0

您可以編輯該問題以包含迄今爲止的嘗試,以及一個小輸入樣本和您的預期輸出。這將幫助我們確定你想要達到的目標。 –

回答

0

我不認爲你可以用一個熊貓命令來解決這個問題。最簡單的解決方案就是爲經度/緯度數據創建一個單獨的數據框。沿着線的東西:

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']) 

該數據幀現在索引到的文件名,所以將數據添加到原始數據幀應該很容易。

相關問題