按日期从数据帧中选择行

2024-10-03 15:30:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下数据帧:

       FAK_ART    FAK_DAT  LEIST_DAT      KD_CRM MW_BW       EQ_NR MATERIAL  \
0         ZPAF 2015-05-18 2015-05-31         TMD     E  1003507107  G230ETS   
1         ZPAF 2015-05-18 2015-05-31         TMD     B  1003507107  G230ETS   
2         ZPAF 2015-05-18 2015-05-31         TMD     E  1003507108  G230ETS   
3         ZPAF 2015-05-18 2015-05-31         TMD     B  1003507108  G230ETS   
4         ZPAF 2015-05-18 2015-05-31         TMD     E  1003507109  G230ETS   
5         ZPAF 2015-05-18 2015-05-31         TMD     B  1003507109  G230ETS   
6         ZPAF 2015-05-18 2015-05-31         TMD     E  1003507110  G230ETS   
7         ZPAF 2015-05-18 2015-05-31         TMD     B  1003507110  G230ETS   
8         ZPAF 2015-05-18 2015-05-31         TMD     E  1003507111  G230ETS 

是的。 . . 你知道吗

387976    ZPAF 2016-02-12 2016-02-29  T-HOME ICP     B  1001022686   A60ETS   
387977    ZPAF 2016-02-12 2016-02-29  T-HOME ICP     B  1001022686   A60ETS   
387978    ZPAF 2016-02-12 2016-02-29  T-HOME ICP     E  1001022712   A60ETS   
387979    ZPAF 2016-02-12 2016-02-29  T-HOME ICP     B  1001022712   A60ETS   
387980    ZPAF 2016-02-12 2016-02-29  T-HOME ICP     E  1001022735   A60ETS   
387981    ZPAF 2016-02-12 2016-02-29  T-HOME ICP     B  1001022735   A60ETS   
387982    ZPAF 2016-02-12 2016-02-29  T-HOME ICP     B  1001022735   A60ETS   
387983    ZPAF 2016-02-12 2016-02-29  T-HOME ICP     E  1001022748   A60ETS   
387984    ZPAF 2016-02-12 2016-02-29  T-HOME ICP     B  1001022748   A60ETS   
387985    ZPAF 2016-02-12 2016-02-29  T-HOME ICP     E  1001022760   A60ETS

现在我只想选择日期为2015-05-31的行。你知道吗

我试着用日期范围来处理它,但我总是会出错:

ValueError: Length of values does not match length of index

或者

ValueError: Must specify two of start, end, or periods

我的想法是:

data_faktura['LEIST_DAT'] = pd.date_range('2016-01-31', '2016-01-31')

但后来我错了!你知道吗

我怎样才能解决这个问题?你知道吗


Tags: of数据homekdicpdatcrmvalueerror
1条回答
网友
1楼 · 发布于 2024-10-03 15:30:48

您可以从列LEIST_DAT^{},然后按^{}选择:

#change 2016-02-29 to your datetime
data_fakture = data_fakture.set_index('LEIST_DAT').ix['2016-02-29']
print (data_fakture)
           FAK_ART     FAK_DAT      KD_CRM MW_BW       EQ_NR MATERIAL
LEIST_DAT                                                            
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022686   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022686   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022712   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022712   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022735   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022735   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022735   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022748   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022748   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022760   A60ETS

^{}

data_fakture = data_fakture.set_index('LEIST_DAT').loc['2016-02-29']
print (data_fakture)
           FAK_ART     FAK_DAT      KD_CRM MW_BW       EQ_NR MATERIAL
LEIST_DAT                                                            
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022686   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022686   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022712   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022712   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022735   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022735   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022735   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022748   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022748   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022760   A60ETS

您还可以按开始和结束日期选择:

data_fakture = data_fakture.set_index('LEIST_DAT').ix['2015-05-31':'2016-02-29']
print (data_fakture)
           FAK_ART     FAK_DAT      KD_CRM MW_BW       EQ_NR MATERIAL
LEIST_DAT                                                            
2015-05-31    ZPAF  2015-05-18         TMD     E  1003507107  G230ETS
2015-05-31    ZPAF  2015-05-18         TMD     B  1003507107  G230ETS
2015-05-31    ZPAF  2015-05-18         TMD     E  1003507108  G230ETS
2015-05-31    ZPAF  2015-05-18         TMD     B  1003507108  G230ETS
2015-05-31    ZPAF  2015-05-18         TMD     E  1003507109  G230ETS
2015-05-31    ZPAF  2015-05-18         TMD     B  1003507109  G230ETS
2015-05-31    ZPAF  2015-05-18         TMD     E  1003507110  G230ETS
2015-05-31    ZPAF  2015-05-18         TMD     B  1003507110  G230ETS
2015-05-31    ZPAF  2015-05-18         TMD     E  1003507111  G230ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022686   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022686   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022712   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022712   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022735   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022735   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022735   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022748   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     B  1001022748   A60ETS
2016-02-29    ZPAF  2016-02-12  T-HOME ICP     E  1001022760   A60ETS

相关问题 更多 >