我需要检查A列中的值是否包含B列中的值。 我尝试使用 isin()方法:
import pandas as pd
df = pd.DataFrame({'A': ['filePath_en_GB_LU_file', 'filePath_en_US_US_file', 'filePath_en_GB_PL_file'],
'B': ['_LU_', '_US_', '_GB_']})
df['isInCheck'] = df.A.isin(df.B)
由于某种原因,它不起作用。 它仅返回 False 值,而对于前两行,它应返回 True 。
我在那里想念什么?
答案 0 :(得分:1)
我认为您需要DataFrame.apply
,但最后一行也要匹配:
function onesignal_mobile_registration( $user_login, $user ) {
// Get user data
$user_id = $user->ID;
$user_email = $user->user_email;
?>
<script>
gonative_onesignal_info(info);
</script>
<?php
$oneSignalPushToken = ???;
update_user_meta( $user_id, 'oneSignalPushToken', $oneSignalPushToken);
}
add_filter( 'wp_login', 'onesignal_mobile_registration', 10, 2 );
答案 1 :(得分:0)
尝试使用申请:
df['isInCheck'] = df.apply(lambda r: r['B'] in r['A'], axis=1)
这将逐行检查。如果要检查是否存在多个元素,也许应该为其中每个元素创建一列:
for e in df['B'].unique():
df[f'has_"{e}"'] = df.apply(lambda r: e in r['A'], axis=1)
print(df)
A B has_"_LU_" has_"_US_" has_"_GB_"
0 filePath_en_GB_LU_file _LU_ True False True
1 filePath_en_US_US_file _US_ False True False
2 filePath_en_GB_PL_file _GB_ False False True