팬드 스 데이터 프레임, df1이 있는데, 이는 A-Z 열이있는 5 분 개의 timeseries입니다. 팬더 : 멋지게 데이터 프레임을 인덱싱
df1.shape
(105121, 26)
df1.index
<class 'pandas.tseries.index.DatetimeIndex'>
[2002-01-02 00:00:00, ..., 2003-01-02 00:00:00]
Length: 105121, Freq: 5T, Timezone: None
는 I 번째 dataframe 있고, DF2, 즉, 일치하는 열 (동일한 기간에 걸쳐) 1 년간
매일 시계열이다. 이 두 번째 프레임의 값은 불린입니다.
df2.shape
(365, 26)
df2.index
<class 'pandas.tseries.index.DatetimeIndex'>
[2002-01-02 00:00:00, ..., 2003-01-01 00:00:00]
Length: 365, Freq: D, Timezone: None
는 내가 다시 각 날짜에 대한 DF1의 컬럼의 서브 세트를 얻을 수 있도록, "[DF2]을 df1.ix", 즉 DF1 또는 somesuch하는 멋진 지표로 DF2 사용할 - DF2하는 사람들을 즉 그 날짜에 (모든 타임 스탬프가있는) True입니다. 따라서 결과의 모양은 (105121, width) 여야하며, 여기서 width는 부울이 의미하는 고유 한 열 수 (너비는 < = 26)입니다.
현재 df1.ix [df2]는 부분적으로 만 작동합니다. df2의 'point-like'시계열에 비추어 볼 때 매일 00:00 값만 선택됩니다.
df2.index
PeriodIndex: 365 entries, 2002-01-02 to 2003-01-01
이 시간, 나는 오류 얻을 :
난 다음에 시간이 DF2 지수로 걸쳐 시도
/home/wchapman/.local/lib/python2.7/site-packages/pandas-0.11.0-py2.7-linux-x86_64.egg/pandas/core/index.pyc in get_indexer(self, target, method, limit)
844 this = self.astype(object)
845 target = target.astype(object)
--> 846 return this.get_indexer(target, method=method, limit=limit)
847
848 if not self.is_unique:
AttributeError: 'numpy.ndarray' object has no attribute 'get_indexer'
내 임시 해결책은 날짜별로 루프입니다, 그러나 이것은 비효율적 인 것 같다. 팬더는 이런 종류의 멋진 인덱싱을 할 수 있습니까? 문서 어디에서나 예제를 볼 수 없습니다.
당신은 5 분에'df2' 리샘플링 및 채울 수 그것. – joris
고마워요. 내가 그걸 시도했음을 언급 했어야 했어. ValueError 가져 오기 : 다차원 키로 색인을 생성 할 수 없습니다. – Will