[英]Select rows from a pandas dataframe that meets one of two string conditions
I'm trying to select the rows from a pandas dataframe where the value of CreditCard is either Discover or American Express.我正在尝试 select pandas dataframe 中的行,其中 CreditCard 的值为 Discover 或 American Express。 I can get the rows containing these values individually but not with both.
我可以单独获取包含这些值的行,但不能同时获取。
# isCorrect = trainDataRetired.loc((['CreditCard'] == 'American Express') or (trainDataRetired['CreditCard'] == 'American Express'))
This line is my last attempt but with no success.这条线是我最后一次尝试,但没有成功。
This gets me the CreditCard column but with only American Express这让我进入了 CreditCard 专栏,但只有美国运通
isCorrect = trainDataRetired['CreditCard'] == 'American Express'
trainDataCorrect = trainDataRetired[isCorrect]
print(trainDataCorrect)
it seems you are using the same filter twice.看来您两次使用相同的过滤器。 in any case, try to use.loc, like:
无论如何,请尝试使用.loc,例如:
FILTER_AEX = (trainDataRetired.loc[:,'CreditCard'] == 'American Express')
FILTER_DIS = (trainDataRetired.loc[:,'CreditCard'] == 'Discover')
isCorrect = trainDataRetired.loc[FILTER_AEX | FILTER_DIS, :]
and check with并检查
isCorrect.loc[:, 'CreditCard'].unique()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.