小编Jon*_*nas的帖子

在Pandas系列中删除行并清理索引

我有一个Pandas系列,基于一个随机数,我想选择一行(下面的代码示例中为5)并删除该行.删除行时,我想为剩余的行(0到8)创建一个新索引.代码如下:

print 'Original series: ', sample_mean_series
print 'Length of original series', len(sample_mean_series)
sample_mean_series = sample_mean_series.drop([5],axis=0)
print 'Series with item 5 dropped: ', sample_mean_series
print 'Length of modified series:', len(sample_mean_series)
print sample_mean_series.reindex(range(len(sample_mean_series)))
Run Code Online (Sandbox Code Playgroud)

这是输出:

Original series:  
0    0.000074
1   -0.000067
2    0.000076
3   -0.000017
4   -0.000038
5   -0.000051
6    0.000125
7   -0.000108
8   -0.000009
9   -0.000052
Length of original series 10
Series with item 5 dropped:  
0    0.000074
1   -0.000067
2    0.000076
3   -0.000017
4   -0.000038
6    0.000125
7   -0.000108
8   -0.000009 …
Run Code Online (Sandbox Code Playgroud)

python series pandas

12
推荐指数
2
解决办法
2万
查看次数

DataFrame的几个时间序列

我有几个时间序列合并到一个常见的DataFrame的问题.我正在使用的示例代码:

import pandas
import datetime
import numpy as np

start = datetime.datetime(2001, 1, 1)
end = datetime.datetime(2001, 1, 10)
dates = pandas.date_range(start, end)
serie_1 = pandas.Series(np.random.randn(10), index = dates)
start = datetime.datetime(2001, 1, 2)
end = datetime.datetime(2001, 1, 11)
dates = pandas.date_range(start, end)
serie_2 = pandas.Series(np.random.randn(10), index = dates)
start = datetime.datetime(2001, 1, 3)
end = datetime.datetime(2001, 1, 12)
dates = pandas.date_range(start, end)
serie_3 = pandas.Series(np.random.randn(10), index = dates)

print 'serie_1'
print serie_1
print 'serie_2'
print serie_2
print 'serie_3'
print …
Run Code Online (Sandbox Code Playgroud)

python time-series pandas

11
推荐指数
1
解决办法
1万
查看次数

按整数索引排序的pandas系列中的位置访问值

我有一个带有整数索引的pandas系列,我已按其排序(按值),我如何系列中的位置访问值.

例如:

s_original = pd.Series({0: -0.000213, 1: 0.00031399999999999999, 2: -0.00024899999999999998, 3: -2.6999999999999999e-05, 4: 0.000122})
s_sorted = np.sort(s_original)

In [3]: s_original
Out[3]: 
0   -0.000213
1    0.000314
2   -0.000249
3   -0.000027
4    0.000122

In [4]: s_sorted
Out[4]: 
2   -0.000249
0   -0.000213
3   -0.000027
4    0.000122
1    0.000314

In [5]: s_sorted[3]
Out[5]: -2.6999999999999999e-05
Run Code Online (Sandbox Code Playgroud)

但我想得到值0.000122即位置 3 的项目.
我该怎么做?

python series pandas

4
推荐指数
2
解决办法
1万
查看次数

使用 Pandas 数据框中的部分数据滚动标准差

我希望能够根据数据框中的部分数据计算滚动标准差。一个例子将解释我想要完成的任务。

                   A         B         C
2000-01-01  0.425615  1.679789 -1.903056
2000-01-02  0.791313  0.562471  0.098124
2000-01-03  1.223165 -0.548387 -1.558204
2000-01-04  0.354931 -0.685773  0.647817
2000-01-05  1.137434  1.000594  0.428180
2000-01-06 -0.265311 -1.807045  0.533477
2000-01-07  0.717505  1.647540 -0.141123
2000-01-08 -2.405664  1.278410  1.043872
2000-01-09  0.463943  0.982042 -0.382241
2000-01-10 -0.403267 -0.615421  0.583384
2000-01-11 -0.714163  0.470505 -0.291396
2000-01-12  0.209979 -0.118331 -0.369776
2000-01-13 -0.779638  0.924612 -0.477497
2000-01-14  0.149868 -0.376292  0.747637
2000-01-15 -0.464360  0.821400  1.412874
Run Code Online (Sandbox Code Playgroud)

这就是我希望能够做到的:

  1. 应该对每一列进行滚动计算。
  2. 我想使用数据文件中每个第 n:th 日期的数据来计算滚动标准差。如果 n=3 并且我想使用以下日期的值计算 2000-01-15 的标准差:2000-01-15、2000-01-12、2000-01-09、2000-01-06, 2000年1月3日。对于 2000-01-14,我使用 2000-01-14、2000-01-11、2000-01-08、2000-01-05、2000-01-02。其他日期的逻辑相同以获得滚动标准差。
  3. 如果该逻辑可以应用于其他计算,那就太好了。我不明白的是如何在不同的时间分辨率之间切换。

python dataframe pandas

1
推荐指数
1
解决办法
1963
查看次数

标签 统计

pandas ×4

python ×4

series ×2

dataframe ×1

time-series ×1