Les Pandas DataFrame ApplyMap méthode

J'ai voulu essayer la fonctionnalité de applymap méthode de Pandas DataFrame objet. Voici les cas d'Utilisation:

Disons que mon DataFrame df1 est comme suit:

Age   ID       Name
0   27  101    John
1   22  102    Bob
2   19  103    Alok
3   27  104    Tom
4   32  105    Matt
5   19  106    Steve
6    5  107    Tom
7   55  108    Dick
8   67  109    Harry

Maintenant, je veux créer une variable d'indicateur avec la logique que si la longueur de l'élément est inférieur à 2, puis flag=1 else flag=0.

Pour exécuter cet élément-sage, j'ai voulu utiliser applymap méthode. Donc pour cela j'ai créé une fonction définie par l'utilisateur comme suit:

def f(x): 
   if len(str(x))>2: 
       df1['Flag']=1
   else: 
      df1['Flag']=0

Ensuite, j'ai couru df1.applymap(f) qui a donné:

    Age    ID  Name
0  None  None  None
1  None  None  None
2  None  None  None
3  None  None  None
4  None  None  None
5  None  None  None
6  None  None  None
7  None  None  None
8  None  None  None

au lieu de créer un indicateur de la variable avec la valeur de l'indicateur. Comment puis-je obtenir la fonctionnalité souhaitée à l'aide de applymap?

Ne pouvons-nous pas utiliser le DataFrame nom de la variable ou de pandas déclaration à l'intérieur de la fonction définie par l'utilisateur? I. e., est df1['Flag'] valide à l'intérieur de la définition de f()?

OriginalL'auteur Baktaawar | 2014-02-12