静かなる名辞

pythonとプログラミングのこと


pandas

DataFrameをprintしたときヘッダの日本語の列名がずれないようにする

日本語の列名のDataFrameを扱うことは、日本人のpandasユーザにとってはありがちな展開だと思うのですが、問題はprintするとヘッダがずれてしまうことです。 >>> import pandas as pd >>> pd.DataFrame({"あああ":[1, 2], "いいい":[3, 4], "ううう":[5, 6],…

pandasで年月日時刻の列を結合して一列にする(datetime64で)

概要 ローデータ(生データ)を取り込むと、年月日が独立して入っている感じの嫌なデータになっていることがあります。 年,月,日 1996,8,1 1998,12,2 2012,05,3 こういうのは嬉しくないので、できるだけ単一のdatetime風の型に変換しておきたいのですが、意…

【python】機械学習でpandas.get_dummiesを使ってはいけない

「pandasのget_dummiesでダミー変数が作れるぜ」という記事がとてもたくさんあって初心者を混乱させているのですが、これは「データ分析」には使えても「機械学習」には向きません。もう少し正確に言い換えると「訓練データからモデルを作り、未知のデータの…

pythonで相関係数を計算する方法いろいろ3種類

はじめに pythonで相関係数を計算する方法はいろいろあります。確認したら、主要ライブラリだけで3つありました。 いろいろあるということは用途によって使い分けられるということなので、淡々と書いていきます。 なお、念のために断っておくと、ここで書い…

【python】pandasのto_sqlを試してみる

はじめに 気軽にDataFrameをデータベーステーブルに変換できそうなto_sqlなるものがあるので、試してみます。pandas.DataFrame.to_sql — pandas 0.23.4 documentation sqliteを使いたかった ドキュメントではSQLAlchemyを使ってSQLiteを叩いているようですが…

【python】sklearn 0.20でclassification_reportの仕様が変わっていた

はじめに 遅まきながら、sklearn 0.20でclassification_reportの仕様が変わったことに気づきました。 基本的な使い方は変わりませんが、それなりに大きな変化になります。 変更点 まず0.19の引数と出力のフォーマット。 sklearn.metrics.classification_repo…

numpyやpandasでThe truth value of ... is ambiguous.のようなエラーが出たときの対処

numpyやpandasでThe truth value of ... is ambiguous.のようなエラーが出たときの対処 条件式を使って生成したようなboolのnumpy配列を使っていると、次のようなエラーが出ることがあります。また、pandasのSeriesやDataFrameでも同様のエラーが発生する場…

【python】pandasのgroupbyで結果をlistにする

pandasのgroupbyを使って、平均や標準偏差を計算する方法は検索するとすぐ出てきます。 ただ、「そういうの良いから、項目ごとに使いやすいイテレータにしてまとめてくれよ!」と思うときがありますよね。 >>> import pandas as pd >>> df = pd.DataFrame({"…

【python】sklearnのVarianceThresholdを試してみる

はじめに VarianceThresholdは名前の通り、分散がしきい値以下の特徴量を捨てます。sklearn.feature_selection.VarianceThreshold — scikit-learn 0.20.2 documentation これといってすごいところはありませんが、気楽に使えそうなので試してみました。 目次…

【python】pandasのDataFrameをLaTeX出力

そんな機能があるらしい。DataFrame.to_latex()という名前のメソッドである。pandas.DataFrame.to_latex — pandas 0.21.1 documentation これが使えると何かの役に立つかもしれないので、使い物になるかどうか確認してみる。 お試し とりあえず、てきとーにd…

【python】pandasでデータを標準得点(z得点)に変換

データの正規化(標準化)をpandasでもやってみる。 正規化、標準化とは、データを分散1、平均0に変換する操作である。スポンサーリンク (adsbygoogle = window.adsbygoogle || []).push({}); 自分で書いてもできるが、scipyの関数を使うと簡単にできる。 >>…

【python】pandasでDataFrameの平均と標準偏差を計算する方法

概要 DataFrameから平均と標準偏差を計算する方法をメモしておきます。 目次 概要 列の平均と標準偏差を計算したい 行の平均と標準偏差を計算したい 特定の列・行だけ取り出してから計算する describeメソッドで全体の雰囲気を掴む 列の平均と標準偏差を計算…

【python】クラスタリング結果を積み上げ棒グラフで可視化する

ラベル付きデータをクラスタリングすることがよくあります(そんな頻繁にあるか? まあ、クラスタリングの使い方次第でたまにはあるからこうして記事にしている訳ですが)。各クラスタの中身がどんなラベルで構成されているのか、知りたくなります。積み上げ…