Pandas 在同一列中查找具有非空值的行
假设我有一个数据帧Pandas 在同一列中查找具有非空值的行,pandas,Pandas,假设我有一个数据帧 import numpy import pandas ar = numpy.array([[1.2, 2.1, 0, 1.3], [0, 0, 1.2, 1.5], [2.1, 1.3, 0, 5.6], [0, 0, 2.4, 3.7]]) df = pandas.DataFrame(ar, index = ['0', '1', '2', '3'], columns = ['colA', 'colB', 'colC', 'colD']) index colA c
import numpy
import pandas
ar = numpy.array([[1.2, 2.1, 0, 1.3], [0, 0, 1.2, 1.5], [2.1, 1.3, 0, 5.6], [0, 0, 2.4, 3.7]])
df = pandas.DataFrame(ar, index = ['0', '1', '2', '3'], columns = ['colA', 'colB', 'colC', 'colD'])
index colA colB colC colD ......
0 1.2 2.1 0 1.3
1 0 0 1.2 1.5
2 2.1 1.3 0 5.6
3 0 0 2.4 3.7
4
我希望获得在相同列(如第0行和第2行)中具有非空值的行,然后是第1行和第3行,因为它们在相同列中具有非空值。我该怎么做?
非空值可以不同
预期产量
df1 = index colA colB colC colD ......
0 1.2 2.1 0 1.3
2 2.1 1.3 0 5.6
df2 = index colA colB colC colD
1 0 0 1.2 1.5
3 0 0 2.4 3.7
缺少的值不是
0
,因此使用inteaddf.isna()
df.eq(0)
,然后将布尔值转换为字符串并求和并传递给:
对于数据帧列表,请使用:
dfs = [g for i, g in df.groupby(g)]
然后可以通过索引进行选择:
print (dfs[0])
print (dfs[1])
对不起,忘了添加。我想要你显示的单独的数据帧扫描。我怎样才能得到单独的数据帧。@pranavnerurkar-你认为数据帧列表怎么样?
print (dfs[0])
print (dfs[1])