Considérez la structure de données de chaîne simple: alors, on veut créer une colonne On peut voir le résultat: p> le La question est de savoir pourquoi on peut voir le mauvais upd: p> aucune solution supplémentaire nécessaire . p> p> t code> en vérifiant une sous-chaîne "T "Dans
cordes code> colonne. p>
T code> à l'observation avec index
1 code>. p>
3 Réponses :
Utilisez le suivi, avec l'accesseur de chaîne en pandas et contient: sortie: p> sortie: p> utilisant df.Assign H2>
à l'aide de la compréhension de la liste avec 'in' h2>
C'est une excellente approche, mais que diriez-vous de assigner () code> méthode? La question concerne l'objet de Dataframe, mais pas des objets de la série.
Je l'aime! Pouvez-vous ajouter une approche avec Lambda et dans code>?
Pour utiliser une Lambda et vérifier si "T" existe dans les chaînes simplement:
df.assign(t = lambda x: x['strings'].str.contains('t'))
Aimer! La méthode appliquer () code> fonctionne. La question concerne
assigner () code> un.
@Ruben Kazumov vérifie mon édition. Une chose à noter: vous pouvez confondre le 'T' devant la Lambda (déclaration en tant que colonne) et le 'T'); minimiser la confusion avec le nom de colonne approprié :-) J'espère que cela aide
Si vous voulez que le ASSIGNEZ CODE>, AVIS Lambda à affecter ne vérifiera pas chaque cellule, elle vérifie toujours la colonne basée sur la colonne, c'est pourquoi il affiche FAUX pour tous
df.assign(t = df.strings.apply(lambda x : 't' in x))
strings t
0 qwe False
1 rty True
2 uio False
...quelle est la question?
La question est "pourquoi la mauvaise valeur de
df code> dans la colonne
t code> de l'observation
1 code>?"
Parce que
't' dans df ["chaînes"] code> renvoie false, vous vérifiez pour voir si une chaîne fait partie de PD.Series. Ce n'est pas une comparaison valide. Vous devez utiliser la compréhension de la liste ou l'accesseur de chaîne pour obtenir des valeurs à partir des PD. Series.
Mais
T = Lambda OBS: OBS.Strings + "ABC" CODE> fonctionne comme
OBS.Strings code> a un type de chaîne.
Non. Faites cela à la place,
DF.Assign (T = Lambda X: Type (x [Strings '])) Code> Regardez vos types. Vous, voir x ['Strings'] est une PD.Series.
Vous avez raison! La valeur de la variable
obs code> a
de type code> type et
obs.string.to_string () code> affiche toutes les valeurs de la colonne entière.