小编Aki*_*Omi的帖子

如何使用熊猫完成缺少一些日期的时间序列数据

我有像这样缺少日期的数据集。

date,value
2015-01-01,7392
2015-01-03,4928
2015-01-06,8672
Run Code Online (Sandbox Code Playgroud)

这是我期望实现的目标。

date,value
2015-01-01,7392
2015-01-02,7392 # ffill 1st
2015-01-03,4928
2015-01-04,4928 # ffill 3rd
2015-01-05,4928 # ffill 3rd
2015-01-06,8672
Run Code Online (Sandbox Code Playgroud)

我尝试了很多,我阅读了文档,但找不到解决方案。我猜想使用 df.resample('d',fill_method='ffill'),但我还没有到达这里。有人可以帮我解决问题吗?

这就是我所做的。

>>> import pandas as pd
>>> df = pd.read_csv(text,sep="\t",index_col='date')
>>> df.index = df.index.to_datetime()
>>> index = pd.date_range(df.index[1],df.index.max())
Run Code Online (Sandbox Code Playgroud)

在这里,我得到了从 2015-01-01 到 2015-01-06 的 DatetimeIndex。

>>> values = [ x for x in range(len(index)) ]
>>> df2 = pd.DataFrame(values,index=index)
Run Code Online (Sandbox Code Playgroud)

接下来我要合并原始数据和DatetimeIndex。

>>> df + df2

             0   value
2015-01-01 NaN NaN
2015-01-02 NaN NaN
2015-01-03 NaN NaN
2015-01-04 NaN …
Run Code Online (Sandbox Code Playgroud)

python time-series pandas

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

Pandas:对多列求和并在多列中得到结果

我有一个像这样的"sample.txt".

idx A   B   C   D   cat
J   1   2   3   1   x
K   4   5   6   2   x
L   7   8   9   3   y
M   1   2   3   4   y
N   4   5   6   5   z
O   7   8   9   6   z
Run Code Online (Sandbox Code Playgroud)

使用此数据集,我希望在行和列中得到总和.在行中,这不是什么大不了的事.我做了这样的结果.

### MY CODE ###
import pandas as pd

df = pd.read_csv('sample.txt',sep="\t",index_col='idx')
df.info()

df2 = df.groupby('cat').sum()
print( df2 )
Run Code Online (Sandbox Code Playgroud)

结果是这样的.

      A   B   C   D
cat                
x     5   7   9   3
y     8  10  12   7
z    11 …
Run Code Online (Sandbox Code Playgroud)

python group-by pandas pandas-groupby

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

标签 统计

pandas ×2

python ×2

group-by ×1

pandas-groupby ×1

time-series ×1