如何使用python从数据框中创建多个熊猫时间序列?

问题描述:

我开始用熊猫的数据帧,看起来像这样:如何使用python从数据框中创建多个熊猫时间序列?

Type Date Number 
1 A x y 
2 B x y 
3 A x y 
4 B x y 
5 A x y 

我想创建一个单独的数据的类型和B型数据分开的时间序列。做这件事最有效的方法是什么?

我正在考虑创建两个不同的数据框,其中每个数据只有一个类型的数据,然后将每个单独的数据框转换为一个系列。但我不知道如何做到这一点。

扩展问题:如果你甚至不知道有多少种不同的类型,有没有办法做到这一点?

到目前为止,我试图通过使用df [“type”] == A来检查类型是否是我想要的类型,并且这不会给我一个完整的数据帧,只是一个数据帧,类型是真或假。

其他信息:

我的目标是使用日期和数字数据分别为A型和B型,以创建单独的熊猫的时间序列。

我试过如下:

df.groupBy( “类型”)适用。(拉姆达X:x.Date)

上述功能的作品,但只返回一个列。

df.groupBy( “类型”)申请(拉姆达X:(x.Date,x.Number))。

上述功能无法正常工作,并返回的东西是不是我想要的一切。

预期输出:

类型
甲        X        ý
              X        ý
乙        X        Ÿ
              X        Ÿ

+0

请添加预期的输出。 –

如果你想通过类型分组的日期,把它们放入一个单独的系列,你可以做到以下几点。

组按类型: grouped = df.groupby('Type')

获取来自各组日期: dates = grouped.apply(lambda x:x.Date)

dates现在看起来是这样的:

Type 
A  1 x 
     3 x 
     5 x 
B  2 x 
     4 x 

您可以通过类型名称访问系列:dates.A, dates.B

到目前为止,我试图通过使用df [“type”] == A来检查类型是否是我想要的类型,并且这不会给我一个完整的数据框,只是返回一个数据框,说明该类型是对或错。

df["type"] == A给你一个布尔面膜,你可以插回一个数据帧:df[df["type"] == A] 但是,这是一个非常基本的大熊猫操作,看看官方的教程,有很多例子:http://pandas.pydata.org/pandas-docs/stable/tutorials.html

+0

这很有帮助!我如何获得日期有3列,包括一个为X和一个为Y?我想为x中的日期和y中的数字创建一个时间序列。 – pr338

+0

我试过这个:grouped.apply(lambda x:[x.Date,x.Number]),它不起作用。 – pr338

+0

你可以发布一个例子应该如何输出看起来像? – hellpanderrr