teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

追記

2019/11/06 06:29

投稿

reotantan
reotantan

スコア295

title CHANGED
File without changes
body CHANGED
@@ -6,4 +6,24 @@
6
6
 
7
7
 
8
8
  # 実施したいこと
9
- - 生年月日から年齢を計算したいのですが、コードをいただいてもよろしいでしょうか。
9
+ - 生年月日から年齢を計算したいのですが、コードをいただいてもよろしいでしょうか。
10
+
11
+ # コードの説明
12
+ - 欠損値を埋め、datetimeに変換後、年齢を計算しようとしたのですが、NaTTypeではstrftimeは使えないと表示されています。(Natの値が混じっているので、処理できていないということでしょうか)
13
+
14
+ # コード
15
+ ```ここに言語を入力
16
+
17
+ judge_tb['birthday']=judge_tb.groupby('attribute')['birthday'].transform(lambda d:d.fillna(d.mode()))
18
+ judge_tb['birthday']=pd.to_datetime(judge_tb['birthday'])
19
+
20
+ def getAge(birthday):
21
+ today= int(pd.to_datetime('today').strftime('%Y%m%d'))
22
+ birthday = int(birthday.strftime('%Y%m%d'))
23
+ return int((today - birthday) / 10000)
24
+
25
+ judge_tb['age'] = judge_tb['birthday'].apply(lambda date:getAge(date))
26
+ ```
27
+
28
+ # error
29
+ - ValueError: NaTType does not support strftime