3
A
回答
4
您可以通過loc
使用first_valid_index
與選擇:
s = pd.Series([np.nan,2,np.nan])
print (s)
0 NaN
1 2.0
2 NaN
dtype: float64
print (s.first_valid_index())
1
print (s.loc[s.first_valid_index()])
2.0
+0
工作得非常好! –
2
對於這一系列將返回第一個沒有空值:
創建系列S:
s = pd.Series(index=[2,4,5,6], data=[None, None, 2, None])
其中創建了該系列:
2 NaN
4 NaN
5 2.0
6 NaN
dtype: float64
您可以通過使用獲得的第一個非NaN的值:
s.loc[~s.isnull()].iloc[0]
返回
2.0
如果您在另一方面
有這樣一個數據幀:
df = pd.DataFrame(index=[2,4,5,6], data=np.asarray([[None, None, 2, None], [1, None, 3, 4]]).transpose(),
columns=['a', 'b'])
看起來像這樣:
a b
2 None 1
4 None None
5 2 3
6 None 4
你可以使用這個(對於列)每列中的第一個非空值:
df.a.loc[~df.a.isnull()].iloc[0]
,或者如果你想不包含空值的第一行的任何地方,你可以使用:
df.loc[~df.isnull().sum(1).astype(bool)].iloc[0]
將返回:
a 2
b 3
Name: 5, dtype: object
+0
不認爲數據框中的任何列的第一個非空值? –
+0
我已更新,答案儘可能清晰 – Skirrebattie
相關問題
- 1. 在熊貓系列中找到第一個非零值
- 2. 熊貓:找到並追加到特定列中的第一個空單元格
- 3. 如何找到熊貓多列的非零中值/平均值?
- 4. 熊貓:找到一列
- 5. 爲多列找到第一個非空值
- 6. 熊貓HDFStore在數據列中選擇非空值的行
- 7. 熊貓根據另一列的非空值創建一個新列
- 8. 在熊貓數據框中找到塊中的第一個'真'值
- 9. 大熊貓按行找到第一個男的價值和回報列名
- 10. 找到一個空值,並從一個數據幀中刪除熊貓
- 11. 熊貓:找到第一個發生 - 在時間序列中每天都有
- 12. 如何找到楠之前的第一個非NAN數據在一列中熊貓
- 13. 大熊貓替換非空列值與一個字典的鍵值對
- 14. 熊貓 - 更換楠非空值
- 15. 熊貓列值到列?
- 16. 訪問最後一個非空值的大熊貓
- 17. 的Python - 熊貓 - 獲取最後一個非空值
- 18. 在下一列值中顯示第一列值直到遇到非空
- 19. 熊貓過濾值在一列中
- 20. 在熊貓中添加一列的值
- 21. 在XML中查找第一個非空值
- 22. 在熊貓數據框中查找第一個匹配
- 23. Combine_first和空值在熊貓
- 24. 彙總列值到一個序列中使用熊貓
- 25. 找到一個DataSeries與熊貓圖案
- 26. 熊貓:在列表中找到最頻繁的值
- 27. 在熊貓系列中查找最後一個非零元素的索引
- 28. SQL組中找到行,其中一列有一個空和非空值
- 29. 熊貓忽略非數值
- 30. 熊貓:插值列中的第一個和最後一個數據點是NaN
杜佩:http://stackoverflow.com/questio ns/23309514 /從數據幀中的每一列計算第一個非缺失值 – EdChum