我有两个熊猫系列(s1
和s2
(,如下所示:
import pandas as pd
index1 = list(range(6))
index2 = list(range(2, 8))
data1 = [7, 6, 1, 9, 3, 4]
data2 = [1, 9, 3, 4, 10, 12]
s1 = pd.Series(data=data1, index=index1)
s2 = pd.Series(data=data2, index=index2)
CCD_ 3和CCD_。它们在相应的索引中具有相同的值。
如何使用s1
和s2
创建包含以下内容的新系列s3
:
>>> print(s3)
0 7
1 6
2 1
3 9
4 3
5 4
6 10
7 12
下面是合并的另一个例子:
import pandas as pd
index1 = list(range(6))
index2 = list(range(8, 14))
data1 = [7, 6, 1, 9, 3, 4]
data2 = [7, 2, 5, 6, 10, 12]
s1 = pd.Series(data=data1, index=index1)
s2 = pd.Series(data=data2, index=index2)
s3 = merge(s1, s2)
print(s3)
# 0 7
# 1 6
# 2 1
# 3 9
# 4 3
# 5 4
# 8 7
# 9 2
# 10 5
# 11 6
# 12 10
# 13 12
# dtype: int64
在本例中,s1
和s2
没有公共索引。
如果您的索引已经对齐,那么您可以使用简单的combine_first
:
out = s1.combine_first(s2).convert_dtypes()
输出:
0 7
1 6
2 1
3 9
4 3
5 4
6 10
7 12
dtype: Int64
第二个输出示例:
0 7
1 6
2 1
3 9
4 3
5 4
8 7
9 2
10 5
11 6
12 10
13 12
dtype: Int64
s3=pd.Index(s1).union(pd.Index(s2)).to_series()
s3
出
0 7
1 6
2 1
3 9
4 3
5 4
6 10
7 12