在此代码中:
import pandas as pd
arr=list(range(10))
s1=pd.Series(arr)
s2=pd.Series(s1,index=arr)
print(s2)print(s1)的结果是:
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
dtype: int64我将s1作为数据添加到s2中,并为s2指定了如下索引:
s2=pd.Series(s1,index=arr)但print (s2)的结果与print (s1)相同。那么,为什么s2没有将s1的索引和数据作为自己的数据呢?
发布于 2022-04-17 10:01:33
原因是当您从一个列表创建一个系列时,索引默认从0创建到n-1,其中n是列表中的元素数。
当您从另一个系列创建一个系列时,除非您指定了一个新的索引,否则该索引将从原始系列继承。
可以使用以下方法创建一个MultiIndex (层次索引)对象
pd.MultiIndex有关更多信息,您可以查看文档https://pandas.pydata.org/docs/user_guide/advanced.html
发布于 2022-04-17 10:05:21
使用s1值只复制数据而不复制索引
https://stackoverflow.com/questions/71900890
复制相似问题