簡體   English   中英

操縱緯度和時間序列的熊貓

[英]Manipulations with Lat-Lon and Time Series Pandas

我正在嘗試將某些文件與緯度和經度合並。

Input File1.csv

Name,Lat,Lon,timeseries(n)
London,80.5234,121.0452,523
London,80.5234,121.0452,732
London,80.5234,121.0452,848
Paris,90.4414,130.0252,464
Paris,90.4414,130.0252,829
Paris,90.4414,130.0252,98
New York,110.5324,90.0023,572
New York,110.5324,90.0023,689
New York,110.5324,90.0023,794


File2.csv
Name,lat,lon,timeseries1
London,80.5234,121.0452,500
Paris,90.4414,130.0252,400
New York,110.5324,90.0023,700

現在預期輸出為

File2.csv

Name,lat,lon,timeseries1,timeseries(n) #timeseries is 24 hrs format 17:45:00
London,80.5234,121.0452,500,2103 #Addition of all three values 
Paris,90.4414,130.0252,400,1391
New York,110.5324,90.0023,700,2055

使用python, numpy and dictionaries ,將直接作為key = sum of values但我想使用Pandas

請建議我如何開始,或者可能是我舉一些例子的重點。 我沒有看到類似帶有LatitudeLongitude Pandas的Dictionary類型。

在第一個df上執行groupby聚合,調用sum ,然后merge其與另一個df merge

In [12]:
gp = df.groupby('Name')['timeseries(n)'].sum().reset_index()
df1.merge(gp, on='Name')

Out[14]:
       Name       Lat       Lon  timeseries1  timeseries(n)
0    London   80.5234  121.0452          500           2103
1     Paris   90.4414  130.0252          400           1391
2  New York  110.5324   90.0023          700           2055

聚合如下所示:

In [15]:    
gp

Out[15]:
       Name  timeseries(n)
0    London           2103
1  New York           2055
2     Paris           1391

您的csv文件可以使用read_csv加載,例如:

df = pd.read_csv('File1.csv')
df1 = pd.read_csv('File2.csv')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM