2015-12-03 8 views
0

je dois suivre simples dataframe - df:Affectez des valeurs à plusieurs colonnes dans Pandas

0 
0 1 
1 2 
2 3 

Une fois que je tente de créer une nouvelle colonne et attribuer des valeurs pour eux, comme exemple ci-dessous:

df['col2', 'col3'] = [(2,3), (2,3), (2,3)] 

Je suis structure suivante

0 (col2, col3) 
0 1 (2, 3) 
1 2 (2, 3) 
2 3 (2, 3) 

Cependant, je suis à la recherche d'une façon d'obtenir comme ici:

0 col2, col3 
0 1 2, 3 
1 2 2, 3 
2 3 2, 3 
+1

http://pandas.pydata.org/pandas-docs/stable/10min .html avez-vous regardé les docs? Il est assez clair sur la façon de créer des trames de données. –

+0

Je ne vois aucun conseil comment créer et assigner plusieurs valeurs dans les docs. S'il vous plaît avis – SpanishBoy

Répondre

4

Ressemble solution est simple:

df['col2'], df['col3'] = zip(*[(2,3), (2,3), (2,3)]) 
+2

Alors que ce code peut répondre à la question, il serait préférable d'inclure un certain contexte, en expliquant comment cela fonctionne et quand l'utiliser. Les réponses au code uniquement ne sont pas utiles à long terme. – Bono

+0

La solution est simple si votre problème est simple. La solution est inutile si vous voulez affecter 100 colonnes en même temps. – dreab

+1

Si vous avez une solution optimisée pour l'attribution de 100 colonnes, n'hésitez pas à partager. – SpanishBoy