Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.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 如何在空白处合并2个系列_Python_Python 3.x_Pandas - Fatal编程技术网

Python 如何在空白处合并2个系列

Python 如何在空白处合并2个系列,python,python-3.x,pandas,Python,Python 3.x,Pandas,在Dataframe/表中,我有这样的数据 +----+-------+--------+ | id | name1 | name2 | +----+-------+--------+ | 0 | John | | | 1 | | Nathan | | 2 | Andy | | +----+-------+--------+ +----+-------+--------+--------------+ | id | name1 | name2

在Dataframe/表中,我有这样的数据

+----+-------+--------+
| id | name1 | name2  |
+----+-------+--------+
|  0 | John  |        |
|  1 |       | Nathan |
|  2 | Andy  |        |
+----+-------+--------+
+----+-------+--------+--------------+
| id | name1 | name2  | merged_names |
+----+-------+--------+--------------+
|  0 | John  |        | John         |
|  1 |       | Nathan | Nathan       |
|  2 | Andy  |        | Andy         |
+----+-------+--------+--------------+
我想将它们合并到另一列中,在该列中,nulls或empties会填充name列中的任意一个,类似这样

+----+-------+--------+
| id | name1 | name2  |
+----+-------+--------+
|  0 | John  |        |
|  1 |       | Nathan |
|  2 | Andy  |        |
+----+-------+--------+
+----+-------+--------+--------------+
| id | name1 | name2  | merged_names |
+----+-------+--------+--------------+
|  0 | John  |        | John         |
|  1 |       | Nathan | Nathan       |
|  2 | Andy  |        | Andy         |
+----+-------+--------+--------------+

如何在pandas Dataframe中执行此操作如果空单元格实际上是空字符串,则可以执行以下操作:

df['merged_names'] = df1['name1'] + df2['name2']
如果空单元格为
np.nan
,则可以通过以下方式使用
replace

df['merged_names'] = df1['name1'].replace(np.nan, '') + df2['name2'].replace(np.nan, '')
您可以使用:

如果您的值是空字符串而不是
NaN
,则可以首先通过以下方式转换为
NaN

df = df.replace('', np.nan)

df['merged_names']=df[['name1','name2']].fillna('').sum(1)
可能有用,如果你能在答案中描述一下就好了