使用pd.isnull按列名迭代pandas数据帧

时间:2018-11-03 06:30:50

标签: pandas for-loop dataframe python-3.6

我可以使用for循环来打印数据帧的每一行。

import pandas as pd

data = {"col1": [1.1, 2.2, 3.3]
      , "col2": [4.4, None, 6.6]}
csv = pd.DataFrame(data)

for i in range(len(csv)):
    col1 = csv["col1"][i]
    col2 = csv["col2"][i]
    print(col1, col2)

但是当我使用pd.notnull过滤数据帧时,for循环会出错。

csv = csv[pd.notnull(csv["col2"])]

print("csv:{}".format(csv))
for i in range(len(csv)):
    col1 = csv["col1"][i]
    col2 = csv["col2"][i]
    print(col1, col2)

错误是

  

KeyError:1

任何人都知道通过pd.notnull之后的列名称来迭代数据帧。

0 个答案:

没有答案