返回介绍

Series

发布于 2025-02-25 23:43:39 字数 2679 浏览 0 评论 0 收藏 0

Series is a 1D array with axis labels.

# Creating a series and extracting elements.

xs = Series(np.arange(10), index=tuple(letters[:10]))
print xs[:3],'\n'
print xs[7:], '\n'
print xs[::3], '\n'
print xs[['d', 'f', 'h']], '\n'
print xs.d, xs.f, xs.h
a    0
b    1
c    2
dtype: int64

h    7
i    8
j    9
dtype: int64

a    0
d    3
g    6
j    9
dtype: int64

d    3
f    5
h    7
dtype: int64

3 5 7
# All the numpy functions wiill work with Series objects, and return another Series

y1, y2 = np.mean(xs), np.var(xs)
y1, y2
(4.5, 8.25)
# Matplotlib will work on Series objects too
plt.plot(xs, np.sin(xs), 'r-o', xs, np.cos(xs), 'b-x');

# Convert to numpy arrays with values

print xs.values
[0 1 2 3 4 5 6 7 8 9]
# The Series datatype can also be used to represent time series

import datetime as dt
from pandas import date_range

# today = dt.date.today()
today = dt.datetime.strptime('Jan 21 2015', '%b %d %Y')
print today, '\n'
days = date_range(today, periods=35, freq='D')
ts = Series(np.random.normal(10, 1, len(days)), index=days)

# Extracting elements
print ts[0:4], '\n'
print ts['2015-01-21':'2015-01-28'], '\n' # Note - includes end time
2015-01-21 00:00:00

2015-01-21     9.719261
2015-01-22     8.894461
2015-01-23    10.074521
2015-01-24    10.769334
Freq: D, dtype: float64

2015-01-21     9.719261
2015-01-22     8.894461
2015-01-23    10.074521
2015-01-24    10.769334
2015-01-25    10.159401
2015-01-26     8.992754
2015-01-27     9.681121
2015-01-28     9.908445
Freq: D, dtype: float64
# We can geenerate statistics for time ranges with the resample method
# For example, suppose we are interested in weekly means, standard deviations and sum-of-squares

df = ts.resample(rule='W', how=('mean', 'std', lambda x: sum(x*x)))
df
 meanstd<lambda>
2015-01-259.9233960.688209494.263430
2015-02-0110.3570880.848930755.208973
2015-02-0810.2248060.869441736.362134
2015-02-1510.6722300.942680802.607338
2015-02-229.7851741.012906676.403270
2015-03-019.4950841.472653182.481942

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文