我有以下测向:
import pandas as pd
df = pd.DataFrame({'col1' : ["a","b"],
'col2' : ["ab","XX"], 'col3' : ["w","e"], 'col4':["foo","bar"]})
看起来像这样:
^{pr2}$我要做的是将col2, 3, 4
合并到一个名为ID
的新列中
col1 col2 col3 col4 ID
0 a ab w foo ab.w.foo
1 b XX e bar XX.e.bar
我怎么才能做到呢?在
我试过了,但失败了:
df["ID"] = df.apply(lambda x: '.'.join(["col2","col3","col4"]),axis=1)
In [10]: df
Out[10]:
col1 col2 col3 col4 ID
0 a ab w foo col2.col3.col4
1 b XX e bar col2.col3.col4
使用
x[['col2', 'col3', 'col4']]
简单一点,运行速度更快:
10000行的说明性计时:
^{pr2}$产量
0.00221121072769s per loop
产量
3.32903954983s per loop
代码中的一个小错误,您应该使用传递到lambda函数的
x
来访问这些值:相关问题 更多 >
编程相关推荐