<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>機械学習 on heppoko blog</title><link>https://blog-0847c6.gitlab.io/tags/%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92/</link><description>Recent content in 機械学習 on heppoko blog</description><generator>Hugo -- gohugo.io</generator><language>ja-jp</language><lastBuildDate>Wed, 21 Feb 2024 00:00:00 +0900</lastBuildDate><atom:link href="https://blog-0847c6.gitlab.io/tags/%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92/index.xml" rel="self" type="application/rss+xml"/><item><title>[Python] Iris データセットを Pandas で読み込む</title><link>https://blog-0847c6.gitlab.io/posts/2024/02/21/python/</link><pubDate>Wed, 21 Feb 2024 00:00:00 +0900</pubDate><guid>https://blog-0847c6.gitlab.io/posts/2024/02/21/python/</guid><description>&lt;p&gt;機械学習のサンプルデータとしてよく使われるものの一つに Iris（アヤメ）のデータセットがあります。その読み込み方法です。&lt;/p&gt;
&lt;p&gt;Iris のデータセットを取得する方法自体はいくつかあるようです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://py-memo.com/python/load-iris/" target="_blank" rel="noopener"
 &gt;https://py-memo.com/python/load-iris/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;今回は Iris のデータは機械学習用の定番のライブラリである &lt;code&gt;scikit-learn&lt;/code&gt; を使いました。&lt;/p&gt;
&lt;h2 id="サンプルコード"&gt;&lt;a href="#%e3%82%b5%e3%83%b3%e3%83%97%e3%83%ab%e3%82%b3%e3%83%bc%e3%83%89" class="header-anchor"&gt;&lt;/a&gt;サンプルコード
&lt;/h2&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-py" data-lang="py"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;pandas&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="nn"&gt;pd&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="nn"&gt;sklearn.datasets&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;load_iris&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;iris&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;load_iris&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;df_iris&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pd&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;DataFrame&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;iris&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;columns&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;iris&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;feature_names&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 目的変数である花の種類（target）のカラムを作成（花の種類を数値から文字列に変換して追加）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;df_iris&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;target&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;iris&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;target_names&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;iris&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;target&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;df_iris&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; sepal length &lt;span class="o"&gt;(&lt;/span&gt;cm&lt;span class="o"&gt;)&lt;/span&gt; sepal width &lt;span class="o"&gt;(&lt;/span&gt;cm&lt;span class="o"&gt;)&lt;/span&gt; petal length &lt;span class="o"&gt;(&lt;/span&gt;cm&lt;span class="o"&gt;)&lt;/span&gt; petal width &lt;span class="o"&gt;(&lt;/span&gt;cm&lt;span class="o"&gt;)&lt;/span&gt; target
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;0&lt;/span&gt; 5.1 3.5 1.4 0.2 setosa
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;1&lt;/span&gt; 4.9 3.0 1.4 0.2 setosa
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;2&lt;/span&gt; 4.7 3.2 1.3 0.2 setosa
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;3&lt;/span&gt; 4.6 3.1 1.5 0.2 setosa
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;4&lt;/span&gt; 5.0 3.6 1.4 0.2 setosa
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;.. ... ... ... ... ...
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;145&lt;/span&gt; 6.7 3.0 5.2 2.3 virginica
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;146&lt;/span&gt; 6.3 2.5 5.0 1.9 virginica
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;147&lt;/span&gt; 6.5 3.0 5.2 2.0 virginica
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;148&lt;/span&gt; 6.2 3.4 5.4 2.3 virginica
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;149&lt;/span&gt; 5.9 3.0 5.1 1.8 virginica
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="m"&gt;150&lt;/span&gt; rows x &lt;span class="m"&gt;5&lt;/span&gt; columns&lt;span class="o"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;load_iris&lt;/code&gt; 関数で呼び出されたデータセットは numpy 形式です。&lt;br&gt;
これを扱いやすいように Pandas でデータフレームに変換しています。&lt;br&gt;
また、&lt;code&gt;load_iris&lt;/code&gt; 関数では、説明変数は &lt;code&gt;iris.data&lt;/code&gt;、目的変数は &lt;code&gt;iris.target&lt;/code&gt; に実装されています。&lt;br&gt;
カラム名は &lt;code&gt;iris.feature_names&lt;/code&gt; に入っています。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;iris.target&lt;/code&gt; は花の種類を数値として保持しており、その数値に対応した花の名前は &lt;code&gt;iris.target_names&lt;/code&gt; に定義されています。&lt;br&gt;
花の種類をカラムに追加する際には文字列に変換して追加しています。&lt;/p&gt;
&lt;h2 id="参考-url"&gt;&lt;a href="#%e5%8f%82%e8%80%83-url" class="header-anchor"&gt;&lt;/a&gt;参考 URL
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://py-memo.com/python/load-iris/" target="_blank" rel="noopener"
 &gt;https://py-memo.com/python/load-iris/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://qiita.com/ao_log/items/fe9bd42fd249c2a7ee7a" target="_blank" rel="noopener"
 &gt;https://qiita.com/ao_log/items/fe9bd42fd249c2a7ee7a&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://py-memo.com/python/load-iris/" target="_blank" rel="noopener"
 &gt;https://py-memo.com/python/load-iris/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://aiacademy.jp/texts/show/?id=90" target="_blank" rel="noopener"
 &gt;https://aiacademy.jp/texts/show/?id=90&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>