Je veux rejoindre colonnes Pandas dataframe avec des conditions - séparent les colonnes par une virgule que si la fin on est pas vide:Pandas, combiner des colonnes de chaîne avec des conditions, mais obtenir la valeur de vérité d'une série est ambiguë
import numpy as np
import pandas as pd
df = pd.DataFrame({'score':np.random.randn(3),
'person1':[x*3 for x in list('ABC')],
'person2':[x*3 for x in list('DEF')]})
df
df['person2'][1]=""
#print(df['person1']+("" if df['person2']=="" else ", "+df['person2']))
#print(df['person1']+("" if not df['person2'] else ", "+df['person2']))
#print(df['person1']+("" if not df['person2'].values else ", "+df['person2']))
# ValueError: The truth value of a Series is ambiguous.
Cependant, toutes les suggestions des résultats de recherche que j'ai obtenu ne fonctionnent pas. Toutes mes tentatives ci-dessus ont fini avec l'erreur:
ValueError: The truth value of a Series is ambiguous.
PS, étant donné que je me joins à plusieurs colonnes, et certains d'entre eux peut-être vide, et je ne veux pas finir avec une chaîne de plusieurs virgules , est-il possible d'écrire une fonction pour que j'appelle juste cette fonction en rejoignant plusieurs colonnes?
Aidez-nous s'il vous plaît. Merci