データアナリストくんのblog

データアナリストとして働いている人がちょっと調べる内容をまとめるブログ

Pandasで文字型の数値を数値型に強制変換する

import pandas as pd ### dfは任意のpd.DataFrame() ### colは変換させたいカラム df.col = pd.to_numeric(df.col, errors='coerce') .astype(int) でも変換できるが、欠損値が含まれている場合エラーが発生し変換が行われない。 to_numeric の errors を使…

GAデータをAthenaで操作する

会社のDBにメディアのGA(Goole Analytics)ログがあって操作するときに 色々と今までのデータとは毛色が違ったので忘れないように。 ※一般的なGAログがどのような形で格納されているか分からないので、あくまで知っている内容で書きます。 struct型でデータ…

AWS Athena(Presto)で時間処理

いつも時間処理系のクエリを忘れてしまうのでメモ。。。 Presto time関連のドキュメント 文字型からdatetime型 'YYYY-MM-DD' → DATE(time_col) 'YYYY-MM-DDTHH:mm:ss+zzzz' → from_iso8601_timestamp(time_col) 'YYYYMMDD' → DATE_PARSE(time_col, '%Y%m%d')…

サイズの大きいファイルをLinuxで表示

Linuxで大きいサイズのデータを探すコマンド find /home -size +100M | xargs ls -l 意味:/homeディレクトリ配下で100MB以上のデータを表示 上記だとデータサイズはキロバイトで表示されるのでMBやGBで表示したい場合は以下 find /home -size +1000M | xarg…

Pandas DataFrame の表示件数を増やす

import pandas as pd pd.set_option('display.max_columns', 100) # 表示させるカラム数を増やす pd.set_option('display.max_rows', 100) # 表示させる行数を増やす

Pythonで日付の計算をする

今回は Python で日付の足し算(引き算)やある日付までの日数を計算します。 from datetime import datetime, timedelta 最初にある日付に i 日足す(引く)場合 date = '2023-02-15' delta = 3 # 足し引きしたい日数 date2 = datetime.strftime(datetime.strpt…

AWS Athenaにawswranglerを用いてテーブルを作成

普段の業務でクラウドサービスとしてAWSを利用しています。 データ集計業務や分析ではAthenaというサービスを使ってますが、SQLでは面倒な処理(pivotなど)はPythonでやりたくなります。 PythonからAthena上にテーブルを作る際に便利なpakcage「awswrangler…

matplotlib での日本語の文字化けを回避する

pip installするだけでmatplotlibで日本語がつかえるようになります。 インストール pip install japanize-matplotlib これだけでokです。 実行 import matplotlib.pyplot as plt import japanize_matplotlib # インポートするだけ l = [1,2,3,5,8,13,21] pl…

sedコマンドでテキストファイル内のダブルクォーテーションを削除する方法

sed -i -e 's/"//g' hoge.csv

matplotlibで2軸plotをするテンプレート

2軸でデータを可視化したい際によく忘れてしまうのでメモ的に。 テンプレートでは.plotと折れ線グラフになっているが、ここは.barにすれば棒グラフになります。 import matplotlib.pyplot as plt %matplotlib inline fig = plt.figure(figsize=(10, 5)) ax1 …

Pandasでtsvファイルを読み込む

tsvファイル(タブ区切り)を読み込むread_table()を使う場合 import pandas as pd df = pd.read_table('file_name.tsv') read_csv()を使う場合 import pandas as pd df = pd.read_csv('file_name.tsv', sep='\t') pandas.read_csv ドキュメント pandas.read…