相关疑难解决方法(0)

同时向pandas添加多个列

我是熊猫的新手,并试图弄清楚如何同时为pandas添加多个列.任何帮助在这里表示赞赏.理想情况下,我想一步到位而不是多次重复步骤...

import pandas as pd

df = {'col_1': [0, 1, 2, 3],
        'col_2': [4, 5, 6, 7]}
df = pd.DataFrame(df)

df[[ 'column_new_1', 'column_new_2','column_new_3']] = [np.nan, 'dogs',3]  #thought this would work here...
Run Code Online (Sandbox Code Playgroud)

python pandas

79
推荐指数
4
解决办法
10万
查看次数

熊猫:同时分配多个*new*列

我有一个DataFrame,其中一列包含每行的标签(除了每行的一些相关数据).我有一个字典,其键等于可能的标签和值,等于与该标签相关的2元组信息.我想在我的框架上添加两个新列,一个对应于每行标签的2元组的每个部分.

这是设置:

import pandas as pd
import numpy as np

np.random.seed(1)
n = 10

labels = list('abcdef')
colors = ['red', 'green', 'blue']
sizes = ['small', 'medium', 'large']

labeldict = {c: (np.random.choice(colors), np.random.choice(sizes)) for c in labels}

df = pd.DataFrame({'label': np.random.choice(labels, n), 
                   'somedata': np.random.randn(n)})
Run Code Online (Sandbox Code Playgroud)

我可以通过运行得到我想要的东西:

df['color'], df['size'] = zip(*df['label'].map(labeldict))
print df

  label  somedata  color    size
0     b  0.196643    red  medium
1     c -1.545214  green   small
2     a -0.088104  green   small
3     c  0.852239  green   small
4     b  0.677234    red  medium
5 …
Run Code Online (Sandbox Code Playgroud)

python pandas

28
推荐指数
3
解决办法
2万
查看次数

标签 统计

pandas ×2

python ×2