Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 合并两列并使用pandas库创建新列_Python_Pandas - Fatal编程技术网

Python 合并两列并使用pandas库创建新列

Python 合并两列并使用pandas库创建新列,python,pandas,Python,Pandas,要付款吗 df = pd.read_csv("school_data.csv") col1 col2 0 [1,2,3] [4,5,6] 1 [0,5,3] [6,2,5] col1和col2值是唯一的, 使用pandas您可以一次对多个列使用apply函数,如下所示: col1 col2 col3 0 [1,2,3] [4,5,6] [1,2,3,4,5,6] 1 [0,5,3] [6,2,5] [0,5

要付款吗

df = pd.read_csv("school_data.csv")

    col1    col2 
0  [1,2,3]  [4,5,6] 
1  [0,5,3]  [6,2,5]
col1和col2值是唯一的,
使用pandas

您可以一次对多个列使用apply函数,如下所示:

    col1    col2      col3
0  [1,2,3]  [4,5,6]   [1,2,3,4,5,6]
1  [0,5,3]  [6,2,5]   [0,5,3,6,2,5]
为什么不做一个简单的
df['col1']
+
df['col2']

假设
col1
具有
list
但在
str
类型中。在这种情况下,您始终可以将
func
修改为:

def func(x):
    return x['col1'] + x['col2']

df['col3'] = df[['col1','col2']].apply(func, axis=1)

最简单的方法是:

def func(x):
    return x['col1'][1:-1].split(',') + x['col2']

例如:

df['col3'] = df['col1'] + df['col2']
输出:

import pandas as pd


row1 = [[1,2,3], [4,5,6]]
row2 = [[0,5,3], [6,2,5]]

df = pd.DataFrame(data=[row1, row2], columns=['col1', 'col2'])
df['col3'] = df['col1'] + df['col2']
print(df)
        col1       col2                col3
0  [1, 2, 3]  [4, 5, 6]  [1, 2, 3, 4, 5, 6]
1  [0, 5, 3]  [6, 2, 5]  [0, 5, 3, 6, 2, 5]