我尝试在没有登录但有一个card视图的情况下计数实例,并用count(或True)创建一个新列。我使用了下面的条件语句,得到了一个键错误。有人能帮我弄清楚发生了什么事吗?在
import pandas as pd
import numpy as np
sample = pd.DataFrame({ 'Month' : pd.Categorical(["Jan", "Jan", "Feb", "Feb", "March","Apr", "May"]),
'Name' : pd.Categorical(["Peter", "Meg", "Peter", "Meg", "Meg","Lois", "Lois"]),
'Logins': [1, 1, 1, 1, 1, 1, 0],
'Card': [1, 1, 2, 2, 1, 2, 1]})
sample['LoginNoCard'] = sample['Logins'].where((sample['Logins'] == 0) & (sample['Card'] > 0), sample[1])
我这里的解决方案是创建一个新的数据帧。我想使用条件创建一个新列。如果登录名==0&Card>;0,则为0。如果登录次数>0且卡==0,则为1。艾尔斯南。在
可以考虑使用嵌套的
np.where()
条件来表示ifLogins == 0 & Card > 0
,then0
,ifLogins > 0 and Card == 0
,then1
,elseNaN
。在要将其分配给列,可以
^{pr2}$相关问题 更多 >
编程相关推荐