demo.py(Series取值,切片):

import pandas as pd


t1 = pd.Series([13, 23, 33, 43, 53], index=["a", "b", "c", "d", "e"])
print(t1)
'''
a    13
b    23
c    33
d    43
e    53
dtype: int64
'''

# 通过索引直接取值
print(t1["d"])  # 43
# 通过位置取值(从0开始)
print(t1[3])  # 43


# 切片
# 取位置连续的值
print(t1[1:4])  # 也可以指定步长
'''
b    23
c    33
d    43
dtype: int64
'''

# 取位置不连续的值
print(t1[[1,3]])
'''
b    23
d    43
dtype: int64
'''
# 也可以通过索引取多个值
print(t1[["b","d","w"]])  # 如果指定的索引不存在,那么对应值就返回NaN(float类型)
'''
b    23.0
d    43.0
w     NaN
dtype: float64
'''

demo.py(Series的index和values属性):

import pandas as pd


t1 = pd.Series([13, 23, 33, 43, 53], index=["a", "b", "c", "d", "e"])
print(t1)
'''
a    13
b    23
c    33
d    43
e    53
dtype: int64
'''

print(type(t1.index))  # <class 'pandas.core.indexes.base.Index'>
print(t1.index)   # Index(['a', 'b', 'c', 'd', 'e'], dtype='object')
print(len(t1.index))  # 5  有长度 可以遍历迭代
# 可以强制转换成list类型
print(list(t1.index))  # ['a', 'b', 'c', 'd', 'e']


print(type(t1.values))  # <class 'numpy.ndarray'>
print(t1.values)   # [13 23 33 43 53]
# ndarray的很多方法都可以运用到Series类型。 例如:argmax()获取最大值;clip()裁剪等。

# Series对象本质上由两个数组构成,一个构成索引index,一个构成对象的值values

demo.py(Series的布尔索引):

import pandas as pd


t1 = pd.Series([13, 23, 33, 43, 53], index=["a", "b", "c", "d", "e"])
print(t1)
'''
a    13
b    23
c    33
d    43
e    53
dtype: int64
'''

# Series类型也支持bool索引。
print(t1[t1>30])
'''
c    33
d    43
e    53
dtype: int64
'''

t1[t1>30] = 0
print(t1)
'''
a    13
b    23
c     0
d     0
e     0
dtype: int64
'''

 

 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐