python - 如何将系列加入数据框?

标签 python join pandas dataframe

有什么方法可以直接将 Series 连接到 DataFrame 吗?

连接将位于数据框的字段和系列的索引上。

我找到的唯一方法是先将系列转换为数据框,如下面的代码所示。

import numpy as np
import pandas as pd

df = pd.DataFrame()
df['a'] = np.arange(0, 4)
df['b'] = np.arange(100, 104)


s = pd.Series(data=np.arange(100, 103))

# this doesn't work
# myjoin = pd.merge(df, s, how='left', left_on='a', right_index=True)

# this does
s = s.reset_index()
# s becomes a Dataframe
# note you cannot reset the index of a series inplace
myjoin = pd.merge(df, s, how='left', left_on='a', right_on='index')

print myjoin

最佳答案

我猜 http://pandas.pydata.org/pandas-docs/stable/generated/pandas.concat.html可能有帮助。

例如内部/外部连接。

pd.concat((df,s), axis=1)
Out[26]: 
   a    b    0
0  0  100  100
1  1  101  101
2  2  102  102
3  3  103  NaN

In [27]: pd.concat((df,s), axis=1, join='inner')
Out[27]: 
   a    b    0
0  0  100  100
1  1  101  101
2  2  102  102

关于python - 如何将系列加入数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32335569/

相关文章:

python - Keras train_on_batch() 与 fit() 相比不训练模型

c# - 模拟网络浏览器

python - 如何创建自己的方法并在 DataFrame 中使用它?

ruby-on-rails - Rails Join - 如何获取同名字段

mysql - SQL 命名连接表

python - pickle Pandas DataFrame 的最快方法是什么?

python - 从 Excel 导入多索引数据框

python - 如何在战舰项目的python3中检测碰撞

python - 比较两个 Numpy 数组并在第三个数组中保留不相等的向量

java - 连接两个 .csv 文件