我在pandas中有一个数据框,其中列为try {
WordsListDatabaseHelper.insertWordList
(db, wordsContainer, mOpponent.getUsername());
}
catch(SQLiteException e1) {
Log.i(TAG, e1.getMessage());
}
(int),Year
(有序的整数对)和Loc
(布尔值)。每个Rain
有许多Rain
的数据点。例如,在图表中,您可能会看到:
Year
等
如果Year | Loc | Rain
1700 (0, 0) 1
1700 (0, 0) 1
1700 (5, 6) 0
和Year
相同,是否存在将这些数据点合并为单个数据点的函数,Loc
为所有Rain
的总和相应Rain
和Year
点的点数?
答案 0 :(得分:1)
你的意思是按“年”和“Loc”分组并显示Rain的SUM吗?类似下面的东西?
df.groupby(['Year', 'Loc']).sum().reset_index()
答案 1 :(得分:0)
那里。这应该也可以解决问题:
# Just a dict of your data
dd = {'year':(1700,1700,1700),'loc':((0,0),(0,0),(5,6)),'rain':(1,1,0)}
df = DataFrame(dd)
# Set an index, groupby and count aggregate.
adjusted_df = df.set_index(['year','loc']).groupby(level=['year','loc']).count()
虽然这与第一个解决方案几乎完全相同。第一种解决方案可能更好(代码更少)。