python pandas判断excel某处存在空值,并处理该空值

找出空值:

import pandas as pd #利用pandas库

判断某列存在空值:

pd.isna(df['列名']) #返回Series,值为True(空值)或False(非空)

找到具体哪行为空值:

(1)方法一,for循环手动遍历,以索引值为2为例。行索引:2,列名:项目及品种名称

values_1 = pd.isna(df['列名']) [2]
if values_1 == True:
    print('null_yes')

(2)方法二(推荐)

s_1 = pd.isna(df['列名'])
print( df_2[ s_1 == False ] ) #得到series等于False的行索引,就可以用另一个表格通过这个索引值来操控其他需要的表格如df_2了
s_1 = pd.isna(df['项目及品种名称']) #pd.isna(df[’列名‘])判断为空的列,并返回True和False的series
print(df[s_1 == False])   #s_1 == False返回不为空的行索引值,外面套个df[ ]就能得到所有在'项目及品种名称'列不为空的所有数据。

总结:

1.判断某列为空值,用pd.isna(df['列名'])方法,获得数据为True和False的series

2.series和dataframe不一样,条件判断时直接“ series == 某值 ”获得所有索引,而dataframe需要dataframe['列名' ] == 某值 或“ dataframe.列名 == 某值 ”,来获得索引

3.python很多时候的方便高效,就在于不像C、C++那样手动处理,手动遍历,尽可能找现成的库和方法,来实现复杂逻辑,使代码更简单清晰

你可能感兴趣的:(Python,python,pandas,excel)