<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Python &#8211; ケケンタの独学ITブログ</title>
	<atom:link href="https://kekenta-it-blog.com/category/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/python/feed/" rel="self" type="application/rss+xml" />
	<link>https://kekenta-it-blog.com</link>
	<description>プログラミングやWeb制作の情報を発信</description>
	<lastBuildDate>Mon, 24 Feb 2025 06:30:07 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://kekenta-it-blog.com/wp-content/uploads/2023/07/cropped-KEKENTA-BLOG-32x32.png</url>
	<title>Python &#8211; ケケンタの独学ITブログ</title>
	<link>https://kekenta-it-blog.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【Python】フォルダ内にあるすべてのCSVファイルを結合する【ソースコード】</title>
		<link>https://kekenta-it-blog.com/python-merge-csv/</link>
					<comments>https://kekenta-it-blog.com/python-merge-csv/#respond</comments>
		
		<dc:creator><![CDATA[ケケンタ]]></dc:creator>
		<pubDate>Thu, 05 Dec 2024 06:12:29 +0000</pubDate>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[Chardet]]></category>
		<category><![CDATA[CSV]]></category>
		<category><![CDATA[Pandas]]></category>
		<guid isPermaLink="false">https://kekenta-it-blog.com/?p=12533</guid>

					<description><![CDATA[<p><img src="https://kekenta-it-blog.com/wp-content/uploads/2024/12/eye-catch__python-merge-csv__12533-1024x576.jpg" class="webfeedsFeaturedVisual" /></p>この記事ではPythonとそのライブラリであるPandas・Chardetを使用して 指定フォルダ内にあるすべてのCSVファイルをひとつに結合する方法 をご紹介します。 必要なツール・ライブラリのインストール方法やソース [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://kekenta-it-blog.com/wp-content/uploads/2024/12/eye-catch__python-merge-csv__12533-1024x576.jpg" class="webfeedsFeaturedVisual" /></p>
<p>この記事では<strong>Pythonとそのライブラリである<span class="swl-inline-color has-swl-deep-02-color">Pandas</span>・<span class="swl-inline-color has-swl-deep-02-color">Chardet</span>を使用して</strong></p>



<p class="has-text-align-center is-style-big_kakko_box"><strong><span class="swl-marker mark_yellow">指定フォルダ内にあるすべてのCSVファイルをひとつに結合する方法</span></strong></p>



<p>をご紹介します。</p>



<p><strong>必要なツール・ライブラリのインストール方法やソースコード、具体的な使用方法</strong>を画像つきで丁寧に解説しています。</p>



<p>今回ご紹介するソースコードを使用すれば、<strong><span class="swl-marker mark_yellow">「指定したフォルダ内に入れてあるCSVファイル」は、それらのディレクトリ構造に関係なく、すべてひとつのファイルに結合することが可能</span></strong>です。</p>


<div class="swell-block-balloon"><div class="c-balloon -bln-left" data-col="gray"><div class="c-balloon__icon -circle"><img decoding="async" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="lazyload c-balloon__iconImg" width="80px" height="80px"><noscript><img decoding="async" src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="c-balloon__iconImg" width="80px" height="80px"></noscript><span class="c-balloon__iconName">ケケンタ</span></div><div class="c-balloon__body -speaking -border-on"><div class="c-balloon__text">
<p>ぜひご活用いただければ何よりです！</p>
<span class="c-balloon__shapes"><span class="c-balloon__before"></span><span class="c-balloon__after"></span></span></div></div></div></div>


<h2 class="wp-block-heading">【事前準備】必要ソフト・ライブラリのインストール</h2>



<p>本章では以下のインストール方法をそれぞれ解説します。</p>



<ol class="wp-block-list is-style-num_circle -list-under-dashed">
<li>Python</li>



<li>pip（パッケージ管理ツール）</li>



<li>Pandas（ライブラリ）</li>



<li>Chardet（ライブラリ）</li>
</ol>


<div class="swell-block-balloon"><div class="c-balloon -bln-left" data-col="gray"><div class="c-balloon__icon -circle"><img decoding="async" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="lazyload c-balloon__iconImg" width="80px" height="80px"><noscript><img decoding="async" src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="c-balloon__iconImg" width="80px" height="80px"></noscript><span class="c-balloon__iconName">ケケンタ</span></div><div class="c-balloon__body -speaking -border-on"><div class="c-balloon__text">
<p>もし上記の中で、<strong><span class="swl-marker mark_orange">インストールが済んでいないもの</span></strong>があれば、以下よりご紹介する方法でインストールを完了しましょう。</p>
<span class="c-balloon__shapes"><span class="c-balloon__before"></span><span class="c-balloon__after"></span></span></div></div></div></div>


<h3 class="wp-block-heading" id="anc-python-install">① Pythonのインストール</h3>



<div class="swell-block-step" data-num-style="circle">
<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">公式ドキュメントからインストーラをダウンロードする</div><div class="swell-block-step__body">
<p class="is-style-bg_stripe"><a href="https://www.python.org/">公式サイト</a>からインストーラをダウンロードします。</p>


<div class="wp-block-image is-style-shadow size_s">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="494" src="https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_installer_download-1024x494.png" alt="Pythonのインストーラをダウンロード" class="wp-image-12554" srcset="https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_installer_download-1024x494.png 1024w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_installer_download-300x145.png 300w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_installer_download-768x371.png 768w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_installer_download.png 1249w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Pythonのインストーラをダウンロード</figcaption></figure>
</div>


<p class="is-style-icon_pen">■ 公式サイトURL：<a href="https://www.python.org/">https://www.python.org/</a></p>
</div></div>



<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">インストーラにしたがってPythonをインストールする</div><div class="swell-block-step__body">
<p><strong>インストーラをダブルクリック</strong>します。</p>



<p>すると、インストーラが起動するので<strong>「Add python.exe to PATH」にチェックを入れます。</strong></p>



<p class="is-style-icon_info">「Add python.exe to PATH」にチェックを入れ忘れるとさらにひと手間かかることになるため、<strong><span class="swl-marker mark_orange">必ずチェックを入れ忘れていないかご確認下さい。</span></strong></p>


<div class="wp-block-image is-style-shadow size_s">
<figure class="aligncenter size-full"><img decoding="async" width="656" height="405" src="https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_installer.png" alt="Pythonのインストーラ起動直後の画面" class="wp-image-12558" srcset="https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_installer.png 656w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_installer-300x185.png 300w" sizes="(max-width: 656px) 100vw, 656px" /><figcaption class="wp-element-caption">Pythonのインストーラ起動直後の画面</figcaption></figure>
</div>


<p class="has-text-align-center"><span style="--the-icon-svg: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ0OCA1MTIiPjxwYXRoIGQ9Ik0yMDEuNCAzNzQuNmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMGwxNjAtMTYwYzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwTDIyNCAzMDYuNyA4Ni42IDE2OS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2wxNjAgMTYweiI+PC9wYXRoPjwvc3ZnPg==)" data-icon="FasAngleDown" data-id="1" aria-hidden="true" class="swl-inline-icon"> </span></p>



<p>インストールが完了するまで待機します。</p>


<div class="wp-block-image is-style-shadow size_xs">
<figure class="aligncenter size-full"><img decoding="async" width="820" height="506" src="https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_install_progress.png" alt="Pythonのインストール中" class="wp-image-12557" srcset="https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_install_progress.png 820w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_install_progress-300x185.png 300w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_install_progress-768x474.png 768w" sizes="(max-width: 820px) 100vw, 820px" /><figcaption class="wp-element-caption">Pythonのインストール中</figcaption></figure>
</div>


<p class="has-text-align-center"><span style="--the-icon-svg: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ0OCA1MTIiPjxwYXRoIGQ9Ik0yMDEuNCAzNzQuNmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMGwxNjAtMTYwYzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwTDIyNCAzMDYuNyA4Ni42IDE2OS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2wxNjAgMTYweiI+PC9wYXRoPjwvc3ZnPg==)" data-icon="FasAngleDown" data-id="1" aria-hidden="true" class="swl-inline-icon"> </span></p>



<p>以下のような画面になったらインストールは完了です。</p>


<div class="wp-block-image is-style-shadow size_xs">
<figure class="aligncenter size-full"><img decoding="async" width="820" height="506" src="https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_install_finish.png" alt="Pythonのインストール完了" class="wp-image-12556" srcset="https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_install_finish.png 820w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_install_finish-300x185.png 300w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_install_finish-768x474.png 768w" sizes="(max-width: 820px) 100vw, 820px" /><figcaption class="wp-element-caption">Pythonのインストール完了</figcaption></figure>
</div>

<div class="swell-block-balloon"><div class="c-balloon -bln-left" data-col="gray"><div class="c-balloon__icon -circle"><img decoding="async" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="lazyload c-balloon__iconImg" width="80px" height="80px"><noscript><img decoding="async" src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="c-balloon__iconImg" width="80px" height="80px"></noscript><span class="c-balloon__iconName">ケケンタ</span></div><div class="c-balloon__body -speaking -border-on"><div class="c-balloon__text">
<p>Closeボタンで閉じてしまってOKです！</p>
<span class="c-balloon__shapes"><span class="c-balloon__before"></span><span class="c-balloon__after"></span></span></div></div></div></div></div></div>



<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">Pythonがインストールできていることを確認する</div><div class="swell-block-step__body">
<p><strong>Windows PowerShell</strong>や<strong>ターミナル</strong>で以下のコマンドを実行します。</p>



<p>Pythonのバージョンが表示されれば、無事にインストールは完了しています。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>python --version</code></pre></div>



<figure class="wp-block-image size-full size_s"><img decoding="async" width="853" height="457" src="https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_confirm_install.png" alt="Pythonのインストール確認" class="wp-image-12559" srcset="https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_confirm_install.png 853w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_confirm_install-300x161.png 300w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/python_confirm_install-768x411.png 768w" sizes="(max-width: 853px) 100vw, 853px" /><figcaption class="wp-element-caption">Pythonのインストール確認</figcaption></figure>
</div></div>
</div>


<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4374558503914683"
     crossorigin="anonymous"></script>
<!-- ディスプレイ【横長】 -->
<ins class="adsbygoogle"
     style="display:block"
     data-ad-client="ca-pub-4374558503914683"
     data-ad-slot="9744298852"
     data-ad-format="auto"
     data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h3 class="wp-block-heading">② pipのインストール</h3>



<p class="is-style-icon_pen">前節の<a href="#anc-python-install">Pythonのインストール</a>の手順で「<strong>Add python.exe to PATH</strong>」にチェックを入れてインストールをした場合、自動的にpipも使用できるようになっています。</p>



<div class="swell-block-capbox cap_box"><div class="cap_box_ttl"><span><span style="--the-icon-svg: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48cGF0aCBkPSJNMzIgNDYuNUgxNmMtMS4xIDAtMi0uOS0yLTJzLjktMiAyLTJoMTZjMS4xIDAgMiAuOSAyIDJzLS45IDItMiAyek00MS43IDE1LjlDNDEuMyAxMyA0MCAxMC4zIDM4LjIgOCAzNC41IDMuMiAyOSAuOCAyMy4xIDEgMTQgMS40IDYuNSA4LjkgNiAxOGMtLjMgNiAyLjQgMTEuNyA3LjIgMTUuNC41LjQuOC45LjggMS41djEuNmMwIDIuMiAxLjggNCA0IDRoMTJjMi4yIDAgNC0xLjggNC00VjM1YzAtLjYuMy0xLjIuOS0xLjcgNS4zLTQgOC0xMC42IDYuOC0xNy40em0tNy4xIDEuN2gtLjNjLS43IDAtMS4zLS41LTEuNS0xLjItLjctMy4yLTMuMi01LjctNi40LTYuMy0uOC0uMS0xLjQtLjktMS4yLTEuN3MuOS0xLjQgMS43LTEuMmM0LjQuOCA4IDQuMiA4LjkgOC42LjEuOC0uNCAxLjYtMS4yIDEuOHoiPjwvcGF0aD48L3N2Zz4=)" data-icon="LsLightbulb" data-id="0" aria-hidden="true" class="swl-inline-icon"> </span><strong>pipがインストールされているか確認する方法</strong></span></div><div class="cap_box_content">
<p class="is-style-icon_good">以下のコマンドを実行してpipのバージョンが表示されればインストールされています。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>pip --version</code></pre></div>
</div></div>



<p>この節では、<strong><span class="swl-marker mark_orange">Pythonのインストールが済んでいるけどpipが使用できない</span></strong>という方向けのインストール方法をご紹介します。</p>



<p class="has-text-align-center"><span style="--the-icon-svg: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ0OCA1MTIiPjxwYXRoIGQ9Ik0yMDEuNCAzNzQuNmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMGwxNjAtMTYwYzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwTDIyNCAzMDYuNyA4Ni42IDE2OS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2wxNjAgMTYweiI+PC9wYXRoPjwvc3ZnPg==)" data-icon="FasAngleDown" data-id="1" aria-hidden="true" class="swl-inline-icon"> </span></p>



<div class="swell-block-step" data-num-style="circle">
<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">get-pip.pyファイルをダウンロードする</div><div class="swell-block-step__body">
<p>以下のリンクから<strong>get-pip.py</strong>を取得します。</p>



<p class="is-style-bg_stripe"><a href="https://bootstrap.pypa.io/get-pip.py">https://bootstrap.pypa.io/get-pip.py</a></p>



<p class="is-style-icon_good">保存先はお好きな分かりやすい場所でOKです。</p>


<div class="swell-block-balloon"><div class="c-balloon -bln-left" data-col="gray"><div class="c-balloon__icon -circle"><img decoding="async" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="lazyload c-balloon__iconImg" width="80px" height="80px"><noscript><img decoding="async" src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="c-balloon__iconImg" width="80px" height="80px"></noscript><span class="c-balloon__iconName">ケケンタ</span></div><div class="c-balloon__body -speaking -border-on"><div class="c-balloon__text">
<p><strong><span class="swl-marker mark_yellow">リンクをクリックしてもページが開かれるだけの場合</span></strong>は、<strong>以下の手順</strong>でファイルをダウンロードすることが可能です。<br><br><strong>１．リンクを右クリック<br>２．「名前を付けてリンク先を保存」をクリック</strong></p>
<span class="c-balloon__shapes"><span class="c-balloon__before"></span><span class="c-balloon__after"></span></span></div></div></div></div></div></div>



<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">get-pip.pyを配置したディレクトリ上でコマンドを実行</div><div class="swell-block-step__body">
<p>get-pip.pyを配置したディレクトリ上で以下のコマンドを実行します。</p>



<div class="hcb_wrap u-mb-ctrl u-mb-20"><pre class="prism line-numbers lang-plain"><code>python get-pip.py</code></pre></div>



<p>例えば、ファイルを「デスクトップ」に保存したなら、ターミナル上で「デスクトップ」へ移動し、上記のコマンドを実行します。</p>



<p class="is-style-balloon_box"><strong>デスクトップへ移動する（Windowsの場合）</strong></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd C:\Users\ユーザー名フォルダ\OneDrive\デスクトップ</code></pre></div>


<div class="wp-block-image is-style-shadow size_s">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="561" src="https://kekenta-it-blog.com/wp-content/uploads/2024/12/move-to-desktop-1024x561.png" alt="デスクトップへ移動" class="wp-image-12595" srcset="https://kekenta-it-blog.com/wp-content/uploads/2024/12/move-to-desktop-1024x561.png 1024w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/move-to-desktop-300x164.png 300w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/move-to-desktop-768x421.png 768w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/move-to-desktop.png 1114w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">デスクトップへ移動</figcaption></figure>
</div></div></div>



<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">pipがインストールされたか確認する</div><div class="swell-block-step__body">
<p>以下のコマンドを実行してpipがインストールされているか確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>pip --version</code></pre></div>


<div class="wp-block-image is-style-shadow size_s">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="492" src="https://kekenta-it-blog.com/wp-content/uploads/2024/12/pip-confirm-install-1024x492.png" alt="pipのインストール確認" class="wp-image-12596" srcset="https://kekenta-it-blog.com/wp-content/uploads/2024/12/pip-confirm-install-1024x492.png 1024w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/pip-confirm-install-300x144.png 300w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/pip-confirm-install-768x369.png 768w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/pip-confirm-install.png 1318w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">pipのインストール確認</figcaption></figure>
</div></div></div>
</div>


<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4374558503914683"
     crossorigin="anonymous"></script>
<!-- ディスプレイ【横長】 -->
<ins class="adsbygoogle"
     style="display:block"
     data-ad-client="ca-pub-4374558503914683"
     data-ad-slot="9744298852"
     data-ad-format="auto"
     data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h3 class="wp-block-heading">③ Pandas・Chardetのインストール</h3>



<p class="is-style-bg_stripe">ライブラリは<strong>pip</strong>を使用することで簡単にインストール可能です。</p>



<p>以下のコマンドを実行しましょう。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>pip install pandas</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>pip install chardet</code></pre></div>


<div class="swell-block-balloon"><div class="c-balloon -bln-left" data-col="gray"><div class="c-balloon__icon -circle"><img decoding="async" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="https://kekenta-it-blog.com/wp-content/uploads/2023/11/kekenta-icon-150x150.jpg" alt="" class="lazyload c-balloon__iconImg" width="80px" height="80px"><noscript><img decoding="async" src="https://kekenta-it-blog.com/wp-content/uploads/2023/11/kekenta-icon-150x150.jpg" alt="" class="c-balloon__iconImg" width="80px" height="80px"></noscript><span class="c-balloon__iconName">ケケンタ</span></div><div class="c-balloon__body -speaking -border-on"><div class="c-balloon__text">
<p>以上で<strong>必要なソフトやライブラリのインストールは完了</strong>です！</p>
<span class="c-balloon__shapes"><span class="c-balloon__before"></span><span class="c-balloon__after"></span></span></div></div></div></div>

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4374558503914683"
     crossorigin="anonymous"></script>
<!-- ディスプレイ【横長】 -->
<ins class="adsbygoogle"
     style="display:block"
     data-ad-client="ca-pub-4374558503914683"
     data-ad-slot="9744298852"
     data-ad-format="auto"
     data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">【ソースコード】複数のCSVファイルをひとつにまとめる</h2>



<p class="is-style-bg_stripe">早速ですが、以下が<strong>複数のCSVファイルをひとつのCSVファイルにまとめるソースコード</strong>です。</p>



<div class="hcb_wrap anc-source-code"><pre class="prism line-numbers lang-python" data-lang="Python"><code>import os
import pandas
import chardet
from datetime import datetime

def detect_encoding(file_path):
    with open(file_path, &#39;rb&#39;) as file:
        result = chardet.detect(file.read())
    return result[&#39;encoding&#39;]

def merge_csv_files(root_folder, output_folder):
    # 出力フォルダが存在しない場合は新規作成
    if not os.path.exists(output_folder):
        os.makedirs(output_folder)
        print(f&quot;&#39;{output_folder}&#39;ディレクトリを新規作成しました。&quot;)
    
    all_files = []
    
    # 再帰的にフォルダを探索し、CSVファイルのリストを作成
    for root, dirs, files in os.walk(root_folder):
        for file in files:
            if file.endswith(&#39;.csv&#39;):
                all_files.append(os.path.join(root, file))
    
    # CSVファイルを読み込み、データフレームに結合
    dataframes = []
    for file in all_files:
        encoding = detect_encoding(file)
        df = pandas.read_csv(file, encoding=encoding)
        dataframes.append(df)
    
    merged_df = pandas.concat(dataframes, ignore_index=True)
    
    # 現在日時を取得し、ファイル名に追加
    now = datetime.now()
    timestamp = now.strftime(&quot;%Y%m%d_%H%M%S&quot;)
    output_file = os.path.join(output_folder, f&quot;{timestamp}_merge.csv&quot;)
    
    # 結合したデータフレームを新しいCSVファイルにUTF-8エンコーディングで保存
    merged_df.to_csv(output_file, index=False, encoding=&#39;utf-8-sig&#39;)

# CSV格納ディレクトリ
root_folder = &#39;./target_csv_files&#39;
# 結合ファイル保存先ディレクトリ
output_folder = &#39;./merged&#39;
merge_csv_files(root_folder, output_folder)</code></pre></div>



<h3 class="wp-block-heading">ポイント</h3>



<p><strong><span class="swl-marker mark_yellow">ソースコードのポイント</span></strong>は以下のとおりです。</p>



<div class="swell-block-capbox cap_box"><div class="cap_box_ttl"><span><span data-icon="LsLightbulb" data-id="0" style="--the-icon-svg: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48cGF0aCBkPSJNMzIgNDYuNUgxNmMtMS4xIDAtMi0uOS0yLTJzLjktMiAyLTJoMTZjMS4xIDAgMiAuOSAyIDJzLS45IDItMiAyek00MS43IDE1LjlDNDEuMyAxMyA0MCAxMC4zIDM4LjIgOCAzNC41IDMuMiAyOSAuOCAyMy4xIDEgMTQgMS40IDYuNSA4LjkgNiAxOGMtLjMgNiAyLjQgMTEuNyA3LjIgMTUuNC41LjQuOC45LjggMS41djEuNmMwIDIuMiAxLjggNCA0IDRoMTJjMi4yIDAgNC0xLjggNC00VjM1YzAtLjYuMy0xLjIuOS0xLjcgNS4zLTQgOC0xMC42IDYuOC0xNy40em0tNy4xIDEuN2gtLjNjLS43IDAtMS4zLS41LTEuNS0xLjItLjctMy4yLTMuMi01LjctNi40LTYuMy0uOC0uMS0xLjQtLjktMS4yLTEuN3MuOS0xLjQgMS43LTEuMmM0LjQuOCA4IDQuMiA4LjkgOC42LjEuOC0uNCAxLjYtMS4yIDEuOHoiPjwvcGF0aD48L3N2Zz4=)" aria-hidden="true" class="swl-inline-icon"> </span><strong>ソースコードのポイント</strong></span></div><div class="cap_box_content">
<ul class="wp-block-list is-style-num_circle -list-under-dashed">
<li>各CSVファイルの保存形式を自動的に読み取り、適切な形式で結合保存可能<br>（日本語の文字化けも防止）</li>



<li>出力フォルダを作成し忘れても自動作成される</li>



<li>CSVファイルを再帰的に検出するため、結合対象のCSVファイル群を同じ階層に取り出さなくても使用可能</li>
</ul>
</div></div>


<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4374558503914683"
     crossorigin="anonymous"></script>
<!-- ディスプレイ【横長】 -->
<ins class="adsbygoogle"
     style="display:block"
     data-ad-client="ca-pub-4374558503914683"
     data-ad-slot="9744298852"
     data-ad-format="auto"
     data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h3 class="wp-block-heading">ディレクトリ構造</h3>



<p class="is-style-bg_stripe">このソースコードを実際に使用する際は、<strong>ディレクトリ構造</strong>が重要になってきます。</p>



<p>具体的には、<strong><span class="swl-marker mark_yellow">以下３つのファイル・ディレクトリは同じ階層に設置する</span></strong>必要があります。</p>



<ol class="wp-block-list -list-under-dashed is-style-num_circle">
<li>実行ファイル（pyファイル）</li>



<li>結合したいCSVファイル群を格納するディレクトリ</li>



<li>結合後のCSVファイルを格納するディレクトリ</li>
</ol>



<p><strong><span class="swl-marker mark_yellow">階層構造のイメージ図</span></strong>がこちらです。</p>



<p class="has-text-align-center is-style-balloon_box"><strong>ソースコードを正しく使用するためのディレクトリ構造</strong></p>


<div class="wp-block-image is-style-shadow">
<figure class="aligncenter size-full"><img decoding="async" width="787" height="593" src="https://kekenta-it-blog.com/wp-content/uploads/2024/12/merge_csv_program_diretory_arch.jpg" alt="CSVファイル結合プログラム使用時のディレクトリ構造" class="wp-image-12597" srcset="https://kekenta-it-blog.com/wp-content/uploads/2024/12/merge_csv_program_diretory_arch.jpg 787w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/merge_csv_program_diretory_arch-300x226.jpg 300w, https://kekenta-it-blog.com/wp-content/uploads/2024/12/merge_csv_program_diretory_arch-768x579.jpg 768w" sizes="(max-width: 787px) 100vw, 787px" /><figcaption class="wp-element-caption">CSVファイル結合プログラム使用時のディレクトリ構造</figcaption></figure>
</div>

<div class="swell-block-balloon"><div class="c-balloon -bln-left" data-col="gray"><div class="c-balloon__icon -circle"><img decoding="async" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="lazyload c-balloon__iconImg" width="80px" height="80px"><noscript><img decoding="async" src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="c-balloon__iconImg" width="80px" height="80px"></noscript><span class="c-balloon__iconName">ケケンタ</span></div><div class="c-balloon__body -speaking -border-on"><div class="c-balloon__text">
<p>上記を踏まえた上で、実際にプログラムを使用するための準備をひとつずつ進めていきましょう！</p>
<span class="c-balloon__shapes"><span class="c-balloon__before"></span><span class="c-balloon__after"></span></span></div></div></div></div>


<p class="is-style-balloon_box"><span style="--the-icon-svg: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48cGF0aCBkPSJNMjQgMUMxMS4zIDEgMSAxMS4zIDEgMjRzMTAuMyAyMyAyMyAyMyAyMy0xMC4zIDIzLTIzUzM2LjcgMSAyNCAxem0wIDExLjJjMS45IDAgMy41IDEuNiAzLjUgMy41cy0xLjYgMy41LTMuNSAzLjUtMy41LTEuNi0zLjUtMy41IDEuNi0zLjUgMy41LTMuNXptNSAyMi42YzAgLjYtLjQgMS0xIDFoLThjLS42IDAtMS0uNC0xLTF2LTJjMC0uNi40LTEgMS0xaDEuNXYtNmwtMS44LTIuNGExIDEgMCAwIDEgLjgtMS42aDVjLjYgMCAxIC40IDEgMXY5SDI4Yy42IDAgMSAuNCAxIDF2MnoiPjwvcGF0aD48L3N2Zz4=)" data-icon="LsInfo" data-id="0" aria-hidden="true" class="swl-inline-icon"> </span><strong>「パス」のことをよく理解できていない場合はこちらをご覧ください</strong></p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type2" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://kekenta-it-blog.com/wp-content/uploads/2024/04/eye-catch__css-path-how-to-write__79-300x169.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://kekenta-it-blog.com/css-path-how-to-write/">【HTML】パスとは？CSSが反映されない原因｜相対パスと絶対パス【初心者】</a>
						<span class="p-blogCard__excerpt">CSSが上手く反映されない…… とお困りの方へに向けて、この記事ではCSS読み込みの基本となるパスについて詳しく解説していきます。   この記事で分かること パスとは何か&#8230;</span>					</div>
				</div>
			</div>
		</div>


<h3 class="wp-block-heading">使用方法</h3>



<div class="swell-block-step is-style-default" data-num-style="circle">
<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">「root_folder」にひとつにまとめたいCSVファイルを格納するためのディレクトリ名を指定する</div><div class="swell-block-step__body">
<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code># CSV格納ディレクトリ
root_folder = &#39;./target_csv_files&#39;</code></pre></div>
</div></div>



<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">指定したディレクトリを作成し、CSVファイルを配置する</div><div class="swell-block-step__body">
<p><strong>STEP１</strong>で指定したディレクトリ（<code class="dir_name">target_csv_files</code>）を任意の場所に作成し、その中にひとつにまとめたいCSVファイル群を配置します。</p>



<p class="is-style-icon_good">このとき、<strong>CSVファイルのディレクトリ階層が分かれてしまっていても問題ありません。</strong></p>
</div></div>



<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">「output_folder」にひとつにまとめられたCSVファイルの保存先ディレクトリ名を指定する</div><div class="swell-block-step__body">
<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code># 結合ファイル保存先ディレクトリ
output_folder = &#39;./merged&#39;</code></pre></div>



<p>こうすることで、ひとつにまとめられて新規作成されたCSVファイルは<code class="dir_name">merged</code>ディレクトリ内に生成されるようになります。</p>
</div></div>



<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">ソースコードを記述したpyファイルを作成する</div><div class="swell-block-step__body">
<p><a href="#anc-source-code">ソースコード</a>を丸ごとコピーし、pyファイルに貼りつけます。</p>
</div></div>



<div class="swell-block-step__item"><div class="swell-block-step__number u-bg-main"><span class="__label">STEP</span></div><div class="swell-block-step__title u-fz-l">pyファイルを実行する</div><div class="swell-block-step__body">
<p>「root_folder」に指定したディレクトリと同じ階層にpyファイルを配置します。</p>



<p>そして、以下のコマンドでpyファイルを実行します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>python ファイル名.py</code></pre></div>
</div></div>
</div>


<div class="swell-block-balloon"><div class="c-balloon -bln-left" data-col="gray"><div class="c-balloon__icon -circle"><img decoding="async" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="https://kekenta-it-blog.com/wp-content/uploads/2023/11/kekenta-icon-150x150.jpg" alt="" class="lazyload c-balloon__iconImg" width="80px" height="80px"><noscript><img decoding="async" src="https://kekenta-it-blog.com/wp-content/uploads/2023/11/kekenta-icon-150x150.jpg" alt="" class="c-balloon__iconImg" width="80px" height="80px"></noscript><span class="c-balloon__iconName">ケケンタ</span></div><div class="c-balloon__body -speaking -border-on"><div class="c-balloon__text">
<p>以上の手順により、実際に複数のCSVファイルをひとつにまとめることができます！</p>
<span class="c-balloon__shapes"><span class="c-balloon__before"></span><span class="c-balloon__after"></span></span></div></div></div></div>


<h2 class="wp-block-heading">もしエラーが発生したら……</h2>



<p>もしも<strong><span class="swl-marker mark_orange">エラーが発生した場合</span></strong>は、以下の点をご確認下さい。</p>



<div class="swell-block-capbox cap_box" data-colset="col1"><div class="cap_box_ttl"><span><span data-icon="LsAlert" data-id="0" style="--the-icon-svg: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48cGF0aCBkPSJNNDcgMzcuOSAyNy41IDQuMWMtLjctMS4zLTItMi0zLjUtMnMtMi43LjctMy41IDJMMSAzNy45Yy0uNyAxLjMtLjcgMi43IDAgNCAuNyAxLjMgMiAyIDMuNSAyaDM5LjFjMS40IDAgMi43LS43IDMuNS0yIC42LTEuMy42LTIuNy0uMS00ek0yMS41IDE3LjVjMC0xLjQgMS4xLTIuNSAyLjUtMi41czIuNSAxLjEgMi41IDIuNXYxMGMwIDEuNC0xLjEgMi41LTIuNSAyLjVzLTIuNS0xLjEtMi41LTIuNXYtMTB6TTI0IDM4Yy0xLjcgMC0zLTEuMy0zLTNzMS4zLTMgMy0zIDMgMS4zIDMgMy0xLjMgMy0zIDN6Ij48L3BhdGg+PC9zdmc+)" aria-hidden="true" class="swl-inline-icon"> </span><strong>エラーが発生したときの確認事項</strong></span></div><div class="cap_box_content">
<ul class="wp-block-list is-style-check_list -list-under-dashed">
<li><strong>Python</strong>がインストールされているか</li>



<li><strong>pip</strong>がインストールされているか</li>



<li><strong>Pandas</strong>・<strong>Chardet</strong>がインストールされているか</li>



<li><strong><span class="swl-inline-color has-swl-deep-02-color">結合したいCSVファイル群を配置したディレクトリ名</span></strong>と<strong><span class="swl-inline-color has-swl-deep-03-color">ソースコードのroot_folderで指定したディレクトリ名</span></strong>が一致しているか</li>



<li><strong><span class="swl-inline-color has-swl-deep-02-color">結合後のCSVファイル保存先ディレクトリ名</span></strong>と<strong><span class="swl-inline-color has-swl-deep-03-color">ソースコードのoutput_folderで指定したディレクトリ名</span></strong>が一致しているか</li>



<li><strong>実行ファイル（pyファイル）</strong>や<strong>CSVファイル群の格納ディレクトリ</strong>、<strong>結合後のCSVファイルの保存先ディレクトリ</strong>が同じ階層にあるか</li>
</ul>
</div></div>


<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4374558503914683"
     crossorigin="anonymous"></script>
<!-- ディスプレイ【横長】 -->
<ins class="adsbygoogle"
     style="display:block"
     data-ad-client="ca-pub-4374558503914683"
     data-ad-slot="9744298852"
     data-ad-format="auto"
     data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">まとめ</h2>



<p>以上がPythonで<strong><span class="swl-marker mark_yellow">指定フォルダ内にあるすべてのCSVファイルをひとつに結合する方法</span></strong>のご紹介でした。</p>



<p>今回ご紹介したソースコードについては当然ながらご自由にお使いいただいて大丈夫です。</p>


<div class="swell-block-balloon"><div class="c-balloon -bln-left" data-col="gray"><div class="c-balloon__icon -circle"><img decoding="async" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="lazyload c-balloon__iconImg" width="80px" height="80px"><noscript><img decoding="async" src="https://kekenta-it-blog.com/wp-content/uploads/2023/07/キリッ-150x150.jpg" alt="" class="c-balloon__iconImg" width="80px" height="80px"></noscript><span class="c-balloon__iconName">ケケンタ</span></div><div class="c-balloon__body -speaking -border-on"><div class="c-balloon__text">
<p>ご自身の環境やご状況に合わせて適宜 修正・調整してご活用いただければと思っています！</p>
<span class="c-balloon__shapes"><span class="c-balloon__before"></span><span class="c-balloon__after"></span></span></div></div></div></div>


<p>また、もし解説でわかりづらい箇所があればX（旧：Twitter）や当記事のコメント欄へメッセージをいただけますと幸いです。</p>



<p>それでは最後までご覧いただきありがとうございました！</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kekenta-it-blog.com/python-merge-csv/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
