Comma Separated Value の略。
主に表計算ソフト間の互換フォーマットとして用いられる。「カンマでカラムが区切られ、改行で行が区切られる」という漠然としたルールで明確なフォーマットの仕様や標準は存在しなかったが、2005年10月にCSVの仕様について書かれたRFC 4180が公開された。
また、タブ区切りなどもCSVに含める場合がある。これは "Character-Separated Values" の略である。
バージョン管理システムのCVSと間違いやすい。
日本語の文字コードに注意する AIに自社のデータを読み込ませて分析させようとしたとき、データ形式としてよく使われるのがCSVファイルだ。しかし、いざAIに読み込ませてみたら、日本語の部分が謎の記号の羅列になってしまい、あわてた経験を持つ読者も多いのではないだろうか。 これは「文字化け」と呼ばれる現象で、原因の多くはファイルに保存された「文字コード」の不一致にある。文字コードとは、コンピュータが文字を認識し表示するための暗号のルールのようなものだ。 これまで日本のWindows環境やExcelでは、「Shift-JIS」と呼ばれるルールが一般的によく使われてきた。しかし、現在のAIやWebサービ…
Notion CSV インポート 文字化け/終わらない NotionにCSVやExcelのデータを取り込もうとしたら、日本語が「????」や「□□□」に化けてしまった。あるいは、インポート処理が始まったまま画面が固まって終わらない。そんな経験、一度はありませんか? 私も最初にNotionへExcelのデータを移そうとしたとき、まったく同じ状況に陥りました。「CSVに保存してインポートするだけでしょ?」と軽く考えていたのに、日本語が全滅。原因がわからないまま1時間ほど試行錯誤した苦い記憶があります。 この記事では、その経験をもとに「文字化け」「処理が終わらない」「日付が認識されない」「無料プラン…
Pythonの勉強を続けています🐍 今回は👉 データ集計(groupby) を学びました。 結論👇 👉 数字を並べて見るだけじゃ意味ない ■ よくある状態 名前,商品,売上Taro,A,100Jiro,B,200Taro,A,300Jiro,B,150Hanako,A,400 👉 行が並んでるだけ 👉 見づらい ■ 本当に欲しい情報 例えば👇 👉 商品ごとの売上合計 👉 こういう「まとめ」が重要 ■ pandasで集計 import pandas as pddf = pd.read_csv("data.csv")result = df.groupby("商品")["売上"].sum()prin…
Pythonの勉強を続けています🐍 今回は👉 無駄なデータの削除 を学びました。 実際のデータって👇 👉 重複👉 空欄👉 使わない列 かなり混ざっています。 ■ なぜ危険? 無駄なデータがあると👇 👉 分析ミス👉 処理が重い👉 結果がズレる 👉 まず整理が重要 ■ 例(CSVデータ) 名前,年齢,売上Taro,20,1000Taro,20,1000Jiro,,2000Hanako,30,3000 👉 重複👉 空欄 がある ■ pandasで読み込み import pandas as pddf = pd.read_csv("data.csv")print(df) ■ 重複削除 df = df.d…
Pythonの勉強を続けています🐍 今回は👉 バラバラなデータを整理する方法 を学びました。 実際のデータって👇 👉 空欄がある👉 順番が違う👉 文字がバラバラ かなり汚いです。 ■ 例(よくあるCSV) 名前,年齢,売上Taro,20,1000Jiro,,2000hanako,30,Saburo,28,1500 👉 空欄ある👉 名前の大文字小文字も違う ■ pandasで読み込む import pandas as pddf = pd.read_csv("data.csv")print(df) ■ 空欄チェック print(df.isnull()) 👉 どこが空か分かる ■ 空欄を埋める df…
Pythonの勉強を続けています🐍 今回は👉 データ抽出条件 を学びました。 結論👇 👉 欲しいデータだけ抜き出せると一気に実務レベル ■ よくある悩み 👉 データはあるけど… 👉 「特定の条件だけ欲しい」 ■ 例(CSVデータ) 名前,年齢,売上Taro,20,1000Jiro,25,2000Hanako,30,3000Saburo,28,1500 ■ 基本(条件1つ) import pandas as pddf = pd.read_csv("data.csv")result = df[df["年齢"] >= 25]print(result) 👉 年齢25以上だけ取得 ■ 複数条件(AND)…
Pythonの勉強を続けています🐍 今回は👉 CSVの時短テクニック を学びました。 結論👇 👉 手で探してるの、もうやめた方がいいです ■ よくある作業 例えば👇 👉 Excelで👉 何百行の中から探す 👉 時間かかる👉 ミスる ■ Pythonなら 👉 一瞬で終わる ■ 例(CSVデータ) 名前,年齢Taro,20Jiro,25Hanako,30Saburo,28 ■ 条件で探す(Python) import csvwith open("data.csv", "r") as f: reader = csv.DictReader(f) for row in reader: if int(ro…
Pythonの勉強を続けています🐍 今回は👉 pandas(パンダス) を学びました。 結論👇 👉 Excelでやってる作業、ほぼ全部Pythonでできる ■ pandasとは? 👉 データを簡単に扱えるライブラリ ■ 何がすごい? 例えば👇 👉 CSV読み込み👉 条件抽出👉 集計 👉 全部一瞬 ■ 準備 pip install pandas ■ CSV読み込み import pandas as pddf = pd.read_csv("data.csv")print(df) 👉 表として表示される ■ 条件抽出 filtered = df[df["年齢"] >= 25]print(filter…
Pythonの勉強を続けています🐍 今回は👉 CSVデータ(Excelっぽいデータ) を学びました。 ■ CSVとは? 👉 カンマ区切りのデータ 例👇 名前,年齢Taro,20Jiro,25 👉 Excelで開くと👇 👉 表みたいに見える ■ なぜ使う? 軽い シンプル どこでも使える 👉 データ処理で超重要 ■ 書き込み import csvdata = [ ["名前", "年齢"], ["Taro", 20], ["Jiro", 25]]with open("data.csv", "w", newline="") as f: writer = csv.writer(f) writer.wr…
Python の Pandas で、CSVの読み込み時にエンコーディングを指定する方法を書いていきます。 CSV 今回は、以下のCSVを使用します。 日付,基準価額,分配金 2026-03-05,12923,250 2026-03-06,13015,0 エンコーディングは Shift_JIS(≒ CP932, Windows-31J)です。 コード例 pd.read_csv の encoding で文字コードを指定します。 import pandas as pd def main(): # CSV読み込み(エンコーディング指定) df = pd.read_csv( "fund-cp932.cs…