Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python,Pandas,将时间戳转换为句点 让我们考虑下面的数据帧: date_range = pd.date_range(dt(2010,1,1), dt(2010,1,31), freq='1D') df = pd.DataFrame(data = np.random.rand(len(date_range),2), index = date_range)_Python_Pandas - Fatal编程技术网

Python,Pandas,将时间戳转换为句点 让我们考虑下面的数据帧: date_range = pd.date_range(dt(2010,1,1), dt(2010,1,31), freq='1D') df = pd.DataFrame(data = np.random.rand(len(date_range),2), index = date_range)

Python,Pandas,将时间戳转换为句点 让我们考虑下面的数据帧: date_range = pd.date_range(dt(2010,1,1), dt(2010,1,31), freq='1D') df = pd.DataFrame(data = np.random.rand(len(date_range),2), index = date_range),python,pandas,Python,Pandas,如果我按1周的时间段对数据点进行分组,并将组定义可视化,我会得到: In: [1]:df.groupby(pd.TimeGrouper('W')).groups Out:[1]: {Timestamp('2010-01-03 00:00:00', freq='W-SUN'): 3, Timestamp('2010-01-10 00:00:00', freq='W-SUN'): 10, Timestamp('2010-01-17 00:00:00', freq='W

如果我按1周的时间段对数据点进行分组,并将组定义可视化,我会得到:

In: [1]:df.groupby(pd.TimeGrouper('W')).groups
Out:[1]: 
     {Timestamp('2010-01-03 00:00:00', freq='W-SUN'): 3,
     Timestamp('2010-01-10 00:00:00', freq='W-SUN'): 10,
     Timestamp('2010-01-17 00:00:00', freq='W-SUN'): 17,
     Timestamp('2010-01-24 00:00:00', freq='W-SUN'): 24,
     Timestamp('2010-01-31 00:00:00', freq='W-SUN'): 31}
我检索该词典的键:

In: [2]: list(df.groupby(pd.TimeGrouper('W')).keys())
Out:[2]: 
    [Timestamp('2010-01-03 00:00:00', freq='W-SUN'),
     Timestamp('2010-01-10 00:00:00', freq='W-SUN'),
     Timestamp('2010-01-31 00:00:00', freq='W-SUN'),
     Timestamp('2010-01-17 00:00:00', freq='W-SUN'),
     Timestamp('2010-01-24 00:00:00', freq='W-SUN')]
然而,我留下了一些有趣的变量,比如
Timestamp('2010-01-24 00:00:00',freq='W-SUN')
,它们的前缀是
Timestamp
,但结构类似句点。如何将这些值转换为实际期间?

您可以使用:

a = df.groupby(pd.TimeGrouper('W')).groups
per = [pd.Period(x, freq=x.freq) for x in a]
print (per)
[Period('2010-01-18/2010-01-24', 'W-SUN'), 
 Period('2010-01-04/2010-01-10', 'W-SUN'), 
 Period('2010-01-25/2010-01-31', 'W-SUN'), 
Period('2010-01-11/2010-01-17', 'W-SUN'), 
Period('2009-12-28/2010-01-03', 'W-SUN')]

但是变量
时间戳('2010-01-03 00:00:00',freq='W-SUN')
是正确的还是错误的?为什么时间戳会附加一个freq值?我认为这是正确的。但是a我不确定我是否知道,请解释一下。但似乎如果频率改变,fteq就会增加。