현재 일부 문제점이있는 날짜 열이 있습니다. 문제를 해결하려고 시도했지만 결론에 도달 할 수 없습니다. 예상대로팬더 데이터 프레임에서 Regex 루프 실행
# Import data
df_views = pd.read_excel('PageViews.xlsx')
# Check data types
df_views.dtypes
Out[57]:
Date object
Customer ID int64
dtype: object
날짜 열은 '날짜'데이터 형식이 아닙니다 : 여기
데이터이다. 또한 검사 수율 :df_views.ix[:5]
Date Customer ID
0 01/25/2016 104064596300
1 02/28/2015 102077474472
2 11/17/2016 106430081724
3 02/24/2016 107770391692
4 10/05/2016 106523680888
5 02/24/2016 107057691592
내가 빨리 적절한 형식을 따르지 않는 행을 확인
XX/XX/XXXX 나는 루프를 작성하려고했지만 접근하는 방법을 알아낼 수 없습니다
print (df_views[df_views["Date"].str.len() != 10])
Date Customer ID
189513 12/14/ 106285770688
189514 10/28/ 107520462840
189515 11/01/ 102969804360
189516 11/10/ 102106417100
189517 02/16/ 107810168068
189518 10/25/ 102096164504
189519 02/08/ 107391760644
189520 02/29/ 107353558928
189521 10/24/ 107209142140
189522 12/20/ 107875461336
189523 12/23/ 107736375428
189524 11/12/ 106561080372
189525 01/27/ 102676548120
189526 11/19/ 107733043896
189527 12/31/ 107774452412
189528 01/21/ 102610956040
189529 01/09/ 108052836888
189530 02/21/ 106380330112
189531 02/02/ 107844459772
189532 12/12/ 102006641640
189533 12/16/ 106604647688
189534 11/14/ 102383102504
내 고리.
중요 사항 : 나는 모든 관측 기간이 한 달이 09/10/11/12 경우 2016
그래서 월에서 2 년 9 월 2015 사이 것을 알고 - 나는이에 "2015"를 추가 할 수 있습니다 날짜가 인 경우 그렇지 않으면 월이 01/02 인 경우 '2016'을 추가 할 수 있습니다.
for row in df_views["Date"]:
if len(row) != 10:
if row.str.contains("^09|10|11|12\/"):
row.str.cat("2015")
elif row.str.contains("^01|02\/"):
row.str.cat("2016")
else:
continue
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-87-684e121dd62d> in <module>()
5 for row in df_views["Date"]:
6 if len(row) != 10:
----> 7 if row.str.contains("^09|10|11|12\/"):
8 row.str.cat("2015")
9 elif row.str.contains("^01|02\/"):
AttributeError: 'str' object has no attribute 'str'
'row'는 문자열로 보입니다. 그래서 노력하고있는 모든 방법 (포함, 고양이)은 거의 작동하지 않을 것입니다. –
for 루프를 사용하지 마십시오. Series에서 직접 사용하고있는'.str' 연산을 사용하십시오. 조정할 필요가있을 수 있지만 명시 적 반복보다 빠릅니다. – BrenBarn