数据处理-Tips-01
记录一下数据处理中的小函数~
数据情况:加入有三列数据,字段分别是0,1的情况~
问题1:筛选出这三列中,任意一列为1的情况
df1=df[df[['电信','移动','联通']].any(axis='columns')]
这样会去掉,三个都为0的情况~
问题2:多字段多分类标签问题
比如说,我要新增一列,如果该行,电信,移动,联通的值分别为1,0,0,那么就输出 电信
def judge_type(x):##x为一个列表
if (x[0]==1) & (x[1]==0)& (x[2]==0):
a='电信'
elif (x[0]==1) & (x[1]==1)& (x[2]==0):
a='电信&移动'
elif (x[0]==1) & (x[1]==0)& (x[2]==1):
a='电信&联通'
elif (x[0]==1) & (x[1]==1)& (x[2]==1):
a='电信&移动&联通'
elif (x[0]==0) & (x[1]==1)& (x[2]==0):
a='移动'
elif (x[0]==0) & (x[1]==1)& (x[2]==1):
a='移动&联通'
elif (x[0]==0) & (x[1]==0)& (x[2]==1):
a='联通'
else:
a=np.nan
return a
data['中标运营商']=data[['电信','移动','联通']].apply(lambda x : judge_type(list(x)),axis=1)
data['中标运营商'].value_counts()
data['中标运营商'].isnull().sum()