0
我正在從地下天氣下載的歷史氣象數據中創建一個熊貓數據框。熊貓數據幀索引從字典中的嵌套值
import json
import requests
import pandas as pd
import numpy as np
import datetime
from dateutil.parser import parse
address = "http://api.wunderground.com/api/7036740167876b59/history_20060405/q/CA/San_Francisco.json"
r = requests.get(address)
wu_data = r.json()
因爲我不需要所有的數據,我只使用觀察列表。該列表包含兩個元素 - date和utcdate - 實際上是字典。
df = pd.DataFrame.from_dict(wu_data["history"]["observations"])
我想索引我創建的數據框與解析日期從字典中的'漂亮'鍵。我可以通過使用數組索引來訪問此值,但我無法弄清楚如何在沒有循環的情況下直接執行此操作。例如,第23元素,我可以寫
pretty_date = df["date"].values[23]["pretty"]
print pretty_date
time = parse(pretty_date)
print time
我也得到
11:56 PM PDT on April 05, 2006
2006-04-05 23:56:00
這就是我此刻的
g = lambda x: parse(x["pretty"])
df_dates = pd.DataFrame.from_dict(df["date"])
df.index = df_date["date"].apply(g)
DF現在重建索引做。在這一點上,我可以刪除我不需要的列。
有沒有更直接的方法來做到這一點?
請注意,有時在同一日期有多個觀測值,但我在代碼的不同部分處理數據清理,重複等。
整潔!謝謝,它確實有幫助。 – Rojj 2014-10-27 11:41:11