我有一个这样的数据框:
IndividualID Trip1 Trip2 Trip3 Trip4 Trip5 Trip6 Trip7 Trip8 Trip9
200100001 23 1 2 4 4 1 5 5 5
200100002 21 1 12 3 1 55 7 7
200100003 12 3 3 6 3
200100004 4
200100005 6 5 3 9 3 5 6
200100005 23 4 4 2 4 3 6 5
我想知道每个人的旅行次数,所以我想创建一个新列,这样新表可能如下所示:
IndividualID Trip1 Trip2 Trip3 Trip4 Trip5 Trip6 Trip7 Trip8 Trip9 Chains
200100001 23 1 2 4 4 1 5 5 5 9
200100002 21 1 12 3 1 55 7 7 8
200100003 12 3 3 6 3 5
200100004 4 1
200100005 6 5 3 9 3 5 6 7
200100005 23 4 4 2 4 3 6 5 8
有没有可能的解决方案?如果有人可以提供帮助,我将不胜感激!提前致谢!
最佳答案
使用iloc
和count
,默认忽略NaN
:
df.iloc[:, 1:].count(1)
0 9
1 8
2 5
3 1
4 7
5 8
dtype: int64
如果值不是NaN
,只需将空字符串替换为NaN
:
df.iloc[:, 1:].replace('', np.nan).count(1)
关于python - 如何计算python中每行具有值的列数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51940179/