前提・実現したいこと
膨大なデータが格納されている50000行1列(行と列は環境によって変わるかもしれないですが、サンプルが正しい形になります)ぐらいの形のCSVファイル内にてenergyという単語の個数と何列目にあるかを出力してくれるプログラムを作りたいです。
ちなみにCSVファイル内のenergyという単語は1つだけではなくいろんな列に点在しています。(下にCSVファイルの例を載せています)
基本的にファイルを読み込むプログラムの部分はわかるのですが、特定の単語が何個存在するかと何列目に位置してるかを教えてくれるプログラムがわかりません。
どなたか教えて頂けると助かります。
CSVファイルの例
154 126 energy 123 159 118 458 energy 698 459 ・ ・ ・
該当のソースコード
Python
1from scipy.optimize import curve_fit 2import numpy as np 3import matplotlib.pyplot as plt 4import matplotlib.cm as cm 5import pandas as pd 6import os, tkinter, tkinter.filedialog, tkinter.messagebox 7import tkinter as tk 8from matplotlib.figure import Figure 9from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2Tk 10 11root = tkinter.Tk() 12root.withdraw() 13 14filetype = [("", "*.csv")] 15 16dirpath = os.path.abspath(os.path.dirname(__file__)) 17tkinter.messagebox.showinfo('fileselect', 'ファイルを選択してください') 18 19filepath = tkinter.filedialog.askopenfilename(filetypes = filetype, initialdir = dirpath) 20 21dataset = pd.read_csv(filepath)
試したこと
インターネットでやり方を調べたのですが、特定の単語の前後を表示する方法は見つかったのですが何列目にあるかを表示する方法が見つかりませんでした。
以下を読まれたうえでの投稿でしょうか。
https://teratail.com/help/avoid-asking
コードをください・デバッグしてください等の丸投げの質問
何かを作りたいのでコードを書いてほしい、学校の課題を解いてほしい等の質問は、具体的にプログラミングで困っている質問ではないと考え、推奨していません。
> 1行50000列ぐらいの形のCSVファイル
csvファイルのサンプルが上記形式ではありません。確認してください。
すみません、サンプルの形式が正しくて50000行1列が正しい呼び方ですね。
> 行と列は環境によって変わるかもしれない
そこが変わるとコードも変わると思います。
50000行1列であればpandas使うのが楽かと思います。
回答1件
あなたの回答
tips
プレビュー