Pandas 编辑字段并将值附加到python dataframe列

Pandas 编辑字段并将值附加到python dataframe列,pandas,dataframe,Pandas,Dataframe,我有以下数据框 Col1 Col2 Col3 123 name test 234 rest check 我要求发生以下事情 Col1 Col2 Col3 test-123 name test test-234 rest check 将“test-”添加到数据框的Col1中的值中将数字转换为str,并添加字符串: Col1 Col2 Col3 123 name test 234

我有以下数据框

Col1    Col2    Col3
123     name    test
234     rest    check
我要求发生以下事情

Col1        Col2    Col3
test-123    name    test
test-234    rest    check

将“
test-
”添加到数据框的
Col1
中的值中

将数字转换为
str
,并添加字符串:

Col1    Col2    Col3
123     name    test
234     rest    check
df['Col1'] = 'test-' + df['Col1'].astype(str)
print (df)

       Col1  Col2   Col3
0  test-123  Name   addr
1  test-234  test  first
另一个解决方案:

df['Col1'] = df['Col1'].apply('test-{}'.format)
print (df)
       Col1  Col2   Col3
0  test-123  Name   addr
1  test-234  test  first
计时

df = pd.concat([df]*10000).reset_index(drop=True)

In [359]: %timeit 'test-' + df['Col1'].astype(str)
10 loops, best of 3: 29.4 ms per loop

In [360]: %timeit df['Col1'].apply('test-{}'.format)
100 loops, best of 3: 6.66 ms per loop

TypeError:ufunc“add”不包含签名类型与dtype匹配的循环('df['Col1']='test-'+df['Col1'])。astype(str)是的,两种解决方案都工作得很好。但第二种解决方案速度更快。