
- はじめに
- 問48 レシート明細データフレーム(df_receipt)の売上エポック秒(sales_epoch)は数値型のUNIX秒でデータを保有している。これを日付型に変換し、レシート番号(receipt_no)、レシートサブ番号(receipt_sub_no)とともに抽出せよ。データは10件を抽出すれば良い。
- 問49 レシート明細データフレーム(df_receipt)の売上エポック秒(sales_epoch)を日付型に変換し、「年」だけ取り出してレシート番号(receipt_no)、レシートサブ番号(receipt_sub_no)とともに抽出せよ。データは10件を抽出すれば良い。
- 問50 レシート明細データフレーム(df_receipt)の売上エポック秒(sales_epoch)を日付型に変換し、「月」だけ取り出してレシート番号(receipt_no)、レシートサブ番号(receipt_sub_no)とともに抽出せよ。なお、月は0埋め2桁で取り出すこと。データは10件を抽出すれば良い。
- 問51 レシート明細データフレーム(df_receipt)の売上エポック秒を日付型に変換し、「日」だけ取り出してレシート番号(receipt_no)、レシートサブ番号(receipt_sub_no)とともに抽出せよ。なお、「日」は0埋め2桁で取り出すこと。データは10件を抽出すれば良い。
- Pythonのコードやライブラリーについて知りたい場合
- 独学でデータ分析をしている方へ
はじめに
問48~問51のコードの説明を初心者や初学者でもわかるような方法でまとめました。
データサイエンス100本ノックのはじめ方は、以下のブログ記事を参考にしてください。
>>【Google Colabはじめ方】データサイエンス100本ノックーデータサイエンティスト協会
問48 レシート明細データフレーム(df_receipt)の売上エポック秒(sales_epoch)は数値型のUNIX秒でデータを保有している。これを日付型に変換し、レシート番号(receipt_no)、レシートサブ番号(receipt_sub_no)とともに抽出せよ。データは10件を抽出すれば良い。
UNIX秒とは、UTC時刻における1970年1月1日午前0時0分0秒(UNIXエポック)からの経過秒数を計算したものです。
本問は(df_receipt)の売上エポック秒(sales_epoch)の数値型UNIX秒データを日付型に変換する必要がありますが、処理の仕方は問47に似ています。
数値型UNIX秒を日付型に変換する方法は、to_datetime()を使用し、引数unit = ‘s’とすることでできます。
df_tmp = pd.to_datetime(df_receipt['sales_epoch'],unit='s')
レシート番号(receipt_no)、レシートサブ番号(receipt_sub_no)とともにデータを10件抽出します。
pd.concat([df_receipt[['receipt_no','receipt_sub_no']],df_tmp],axis=1).head(10)
問49 レシート明細データフレーム(df_receipt)の売上エポック秒(sales_epoch)を日付型に変換し、「年」だけ取り出してレシート番号(receipt_no)、レシートサブ番号(receipt_sub_no)とともに抽出せよ。データは10件を抽出すれば良い。
問48とほぼ処理は同じで、「年」だけ取り出すdt.yearを使用します。
df_tmp = pd.to_datetime(df_receipt['sales_epoch'],unit='s').dt.year
pd.concat([df_receipt[['receipt_no','receipt_sub_no']],df_tmp],axis=1).head(10)
問50 レシート明細データフレーム(df_receipt)の売上エポック秒(sales_epoch)を日付型に変換し、「月」だけ取り出してレシート番号(receipt_no)、レシートサブ番号(receipt_sub_no)とともに抽出せよ。なお、月は0埋め2桁で取り出すこと。データは10件を抽出すれば良い。
月を「0埋め2桁」で取り出すためにはdt.strftime()を使い、引数’%m’を指定します。
df_tmp = pd.to_datetime(df_receipt['sales_epoch'], unit='s').dt.strftime('%m')
pd.concat([df_receipt[['receipt_no', 'receipt_sub_no']],df_tmp], axis=1).head(10)

問51 レシート明細データフレーム(df_receipt)の売上エポック秒を日付型に変換し、「日」だけ取り出してレシート番号(receipt_no)、レシートサブ番号(receipt_sub_no)とともに抽出せよ。なお、「日」は0埋め2桁で取り出すこと。データは10件を抽出すれば良い。
「日」だけを「0埋め2桁」で取り出すためにはdt.strftime()を使い、引数’%d’を指定します。
df_tmp = pd.to_datetime(df_receipt['sales_epoch'], unit='s').dt.strftime('%d')
pd.concat([df_receipt[['receipt_no', 'receipt_sub_no']],df_tmp], axis=1).head(10)
Pythonのコードやライブラリーについて知りたい場合
Pythonはデータ分析でよく使われている言語です。
この機会にPythonのコードの打ち方・ライブラリーについてもっと知りたいと思った方は、以下のブログ記事をご覧ください。
データ分析入門・データサイエンス初心者・初学者向けにデータ分析でよく使うPythonをまとめました。
>>【データ分析初心者】Python構文~if文、format記法とf文字列~
>>【データ分析初心者】Python構文~for文、range関数、zip関数、enumerate関数~
>>【データ分析初心者】Python構文~無名関数lambda式、内包表記、map関数~
>>【データ分析初心者】Pandas~loc[]、iloc[]、スライス、drop()、isin()~
>>【データ分析初心者】Matplotlib、Seabornーscatter、hist、countplot 、barplot
独学でデータ分析をしている方へ
機械学習やデータサイエンス・データ分析を独学で学ぶには、どうしたらよいかをまとめてみましたので、興味がある方はこちらのブログ記事をご覧ください。
