pandas                
            Arbeta med Time Series
        
        
            
    Sök…
Skapa tidsserier
Så här skapar du en enkel tidsserie.
import pandas as pd
import numpy as np
# The number of sample to generate
nb_sample = 100
# Seeding to obtain a reproductible dataset
np.random.seed(0)
se = pd.Series(np.random.randint(0, 100, nb_sample),
                  index = pd.date_range(start = pd.to_datetime('2016-09-24'),
                                        periods = nb_sample, freq='D'))
se.head(2)
# 2016-09-24    44
# 2016-09-25    47
se.tail(2)
# 2016-12-31    85
# 2017-01-01    48
Partiell strängindexering
Ett mycket praktiskt sätt att dela upp Time Series är att använda indexering av partiell sträng . Det tillåter att välja datumintervall med en tydlig syntax.
Få data
Vi använder datasatsen i exemplet Creating Time Series
Visar huvud och svans för att se gränserna
se.head(2).append(se.tail(2))
# 2016-09-24    44
# 2016-09-25    47
# 2016-12-31    85
# 2017-01-01    48
Delin
Nu kan vi subset efter år, månad, dag mycket intuitivt.
Efter år
se['2017']
# 2017-01-01    48
Månadsvis
se['2017-01']
# 2017-01-01    48
På dagen
se['2017-01-01']
# 48
Med ett antal år, månad, dag efter dina behov.
se['2016-12-31':'2017-01-01']
# 2016-12-31    85
# 2017-01-01    48
 pandas ger också en dedikerad truncate för denna användning genom parametrarna after och before - men jag tror att det är mindre tydligt. 
se.truncate(before='2017')
# 2017-01-01    48
se.truncate(before='2016-12-30', after='2016-12-31')
# 2016-12-30    13
# 2016-12-31    85
Modified text is an extract of the original Stack Overflow Documentation
        Licensierat under CC BY-SA 3.0
        Inte anslutet till Stack Overflow