我有一个包含 5 列的数据框,我正在使用 pandas 和 numpy 来编辑和处理数据。
id calv1 calv2 calv3 calv4
1 2006-08-29 2007-08-29 2008-08-29 2009-08-29
2 NaT NaT NaT NaT
3 2006-08-29 NaT NaT NaT
4 2006-08-29 2007-08-29 2010-08-29 NaT
5 2006-08-29 2013-08-29 NaT NaT
6 2006-08-29 NaT 2013-08-29 2013-08-292
Run Code Online (Sandbox Code Playgroud)
我想创建另一个列来计算每个 id 出现的“calv”的数量。但是,如果其他值之间存在缺失值,这对我来说很重要,请参阅第 6 行。然后我希望有一个 NaN 或其他一些值,表明这不是正确的行。
id calv1 calv2 calv3 calv4 no_calv
1 2006-08-29 2007-08-29 2008-08-29 2009-08-29 4
2 NaT NaT NaT NaT 0
3 2006-08-29 NaT NaT NaT 1
4 2006-08-29 2007-08-29 2010-08-29 NaT 3
5 …Run Code Online (Sandbox Code Playgroud) 我有一些数据框,每个数据框有几千行,看起来与此类似:
heifers_df
id y ins
200316157 123 2004121
200316157 456 2004121
200316157 789 2004121
200519776 456 2007234
200519776 789 2007234
200812334 123 2010333
200812334 789 2010333
200812334 345 2010333
200812334 567 2010333
Run Code Online (Sandbox Code Playgroud)
我想使用python(pandas或numphy?)来计算每个ID的出现次数,总出现次数(T)和每次出现的次数(No):
heifers_df
id y ins T No
200316157 123 2004121 3 1
200316157 456 2004121 3 2
200316157 789 2004121 3 3
200519776 456 2007234 2 1
200519776 789 2007234 2 2
200812334 123 2010333 4 1
200812334 789 2010333 4 2
200812334 345 …Run Code Online (Sandbox Code Playgroud)