スキルアップしたい

【kaggle入門】pythonでcsvファイルを結合する方法~目指せ文系データサイエンティスト~

2019年7月19日

  1. HOME >

【kaggle入門】pythonでcsvファイルを結合する方法~目指せ文系データサイエンティスト~

2019年7月19日

【kaggle入門】pythonでcsvファイルを結合する方法~目指せ文系データサイエンティスト~

 

kaggleやSIGNATEをやっていると、trainデータが複数のcsvファイルに分散されていて、それを結合する必要が出てきます。

容量の小さいデータであればExcelのvlookupやAccessを使用すればすぐにできますが、100MBを超えるような膨大なデータですと、Pythonで結合した方が簡単だったりします。

当記事では、誰でも簡単にcsvを連結できるように解説をしています(というか私自身の備忘録です。。。)

 

本記事の信頼性

 

大手IT企業に所属する、文系卒のビジネス支援型データサイエンティスト。

国内大企業へのAI活用コンサルや定着支援・人材育成・講演活動を行っています。

ヤエリ(@yaesuri_man

普段お客様と会話している内容をそのまま紹介します。

 

【kaggle入門】Pythonでcsvファイルを結合する方法 サンプルデータ

 

今回結合したいのは以下の2ファイルです。

 

 

一行目が列名になっている、一般的なtrainデータです。

「商品コード」列の値をキーとして、uriage.csvとshohin.csvを結合していきます。

※結合の方法は、「左結合」「右結合」「内部結合」「外部結合」など色々ありますが、ここではシンプルに

  • uriage.csvを親ファイルとして、shohin.csvを結合する

とします。

shohin.csvを親ファイルにしてしまうと、情報が失われてしまいますからね。

最終的に作成したいのは、uriage.csvを基準とした以下のファイル「uriage_shohin」です。

 

 

【kaggle入門】Pythonでcsvファイルを結合する方法 Pythonの記述

 

それでは早速コードを書いて行きます。

 

お約束

 

まずはpandasを「pd」として読み込みます。

 

 

csvファイルの読み込み

 

次にcsvファイルを読み込みます。

csvファイルは、ディレクトリの適当な所に保管して下さい。

 

 

「encording="shift_jis"」は、日本語部分(商品名の「りんご」「梨」)などを正常に読み込むために必要となります。

(これが無いとエラーになります)

読み込んだファイルを確認してみると、自動的にindexが振られ、正常に読み込まれていることが確認できます。

 

 

 

 

 

csvファイル同士の結合

 

いよいよcsvファイル同士を結合します。

 

 

「uriage」「shohin」それぞれを、「商品コード」という列名をキーに結合し、「uriage_shohin」という新たなデータフレームを作る形です。

「how='left'」は、左側(ここでは「uriage」)を親として、shohinをくっつける意味合いです。

左側、右側それぞれ同じ列名の「商品コード」を記載しています。

※列名が同じ場合はもっと簡素な記載方法もありますが、ここでは最も汎用的な方法を記載しています。

 

csvファイルの書き出し

 

最後に、作成した結合ファイル「uriage_shohin」を、csvファイルとして書き出します。

 

 

無事csvファイルが書き出されました。

 

 

この際、同じフォルダに同じファイル名のcsvがあると、エラーになりますのでご注意ください(初心者あるあるです)。

 

【kaggle入門】Pythonでcsvファイルを結合する方法~目指せ文系データサイエンティスト~まとめ

 

今回のコードをまとめると以下です。

 

 

以上でファイル結合編は終わりとなります。

今後はkaggleに最低限必要な処理などを連載していきたいと思います。

 

その他、pythonやkaggle、AI・機械学習といった記事のまとめはこちらです。

【2020年版】プログラミング関連の記事まとめ~目指せ文系データサイエンティスト~

続きを見る

ここからは、実際に私が購入し、おすすめできると思った本やオンラインスクールを紹介します。

 

機械学習のための「前処理」入門


 

まずはこちら。「機械学習のための『前処理』入門」です。

  • これから機械学習を始めてみたい
  • kaggleやSIGNATEにチャレンジしてみたい

という方には最適な本で、個人的には一番のおすすめです。

 

データモデルの精度向上には特徴量エンジニアリングが不可欠、というよりこれが全てと言っても過言ではありません。

各種環境準備の方法やコーディングの詳細に至るまで、誰にでも分かりやすく書かれています。

この一冊さえあれば、とりあえずkaggleにトライすることができます。

 

 

Udemy「みんなのAI講座 ゼロからPythonで学ぶ人工知能と機械学習」


 

ベネッセが主催する、プログラミング未経験者を対象にしたコース。

数学や統計的な知識はそこそこに、文字通り人工知能と機械学習をゼロから学習できます。

受講生2万人以上、4千人以上の評価者から、5段階中4.0の評価を得ている、万人におすすめできる優良講座。

定価15,000円と高価ですが、90%OFFといったキャンペーンを頻繁に行っていますので、それを狙うのがおすすめ。

 

人工知能は人間を超えるか


 

pythonのコーディングからは離れますが、もしこの本を読んでいない人がいたら必ず一度は目を通しておいた方が良いです。

 

この界隈では有名な、東大の松尾豊先生の著書「人工知能は人間を超えるか」。

 

いわゆるAI・人工知能、機械学習といった昨今のキーワードを中心に、過去の歴史からここ最近の動き、今後の動向に至るまでを、平易な表現で丁寧に解説されています。

 

また日本ディープラーニング協会が開催する「ディープラーニング ジェネラリスト検定(通称:G検定)」の推薦図書の一つでもあります。

 

全てのビジネスマンにおすすめできる一冊。中古でもkindleでも構いませんので、これだけは目を通しておいた方が良いです。

 

-スキルアップしたい

Copyright© 営業アップデート , 2020 All Rights Reserved.