前提
pythonでCSVを読み込んで特定の値以上のセル番地を書き出すプログラムを作成しています。
条件を満たしているインデックスを抽出するところまではできたのですが、そのあとに列ごとに
別の変換したくても検索したら配列全体での変換しか出てこなかったので教えていただけますでしょうか。
よろしくお願いいたします。
実現したいこと
・CSVファイルを読み込む【済】
・行名・列名はCSVにあるため、ある一定以上の値のインデックスを抽出【済】
インデックス抽出で得られた配列の0列目と1列目を別々の方法で変換
0列目:0~15→A~Pに変換 1列目:0~23→1~24
例:[[0 0][0 4][1 0][1 8][2 3]・・・]→[[A1][A5][B1][B9][C4]・・・]
変換後、0,1列目を文字列化して結合
・それぞれのセル番地を一列に並べてexcelもしくはcsvで出力【済】
python
1 2import csv 3import pandas as pd 4import numpy as np 5 6df=pd.read_csv(r"C:\Users\-----\Desktop\------.csv", sep=",", index_col=0, header=0) 7data = df.values 8nds = np.argwhere(data>0.3) 9 10 11np.savetxt(r"C:\Users\-----\Desktop\++++++.csv", nds, delimiter=",", fmt="%d")
補足情報(FW/ツールのバージョンなど)
windows11
python 3.10.8
CSVの中身はこんな感じです。(上のソースコード出力結果)
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
A 0.700 0.219 0.596 0.223 0.563 0.221 0.248 0.215 0.516 0.313 0.540 0.235 0.690 0.206 0.659 0.690 0.638 0.607 0.212 0.334 0.800 0.244 0.244 0.248
B 0.726 0.211 0.209 0.212 0.217 0.221 0.205 0.218 0.699 0.408 0.216 0.681 0.208 0.218 0.697 0.686 0.582 0.211 0.797 0.669 0.211 0.589 0.809 0.771
C 0.215 0.219 0.203 0.620 0.602 0.221 0.703 0.621 0.584 0.208 0.613 0.315 0.513 0.551 0.207 0.208 0.653 0.213 0.206 0.211 0.218 0.218 0.225 0.533
D 0.232 0.228 0.214 0.332 0.219 0.548 0.217 0.583 0.209 0.212 0.202 0.215 0.207 0.668 0.690 0.210 0.519 0.212 0.209 0.426 0.735 0.670 0.220 0.228
E 0.282 0.233 0.212 0.434 0.217 0.604 0.373 0.445 0.187 0.206 0.202 0.201 0.312 0.197 0.206 0.197 0.573 0.420 0.211 0.220 0.672 0.222 0.752 0.236
F 0.639 0.228 0.211 0.221 0.211 0.213 0.627 0.216 0.197 0.591 0.426 0.553 0.199 0.753 0.206 0.206 0.202 0.517 0.636 0.636 0.658 0.221 0.764 0.242
G 0.238 0.227 0.667 0.220 0.218 0.596 0.524 0.547 0.754 0.600 0.725 0.220 0.214 0.210 0.188 0.205 0.660 0.680 0.214 0.560 0.715 0.576 0.553 0.730
H 0.240 0.231 0.216 0.612 0.717 0.221 0.452 0.215 0.488 0.216 0.552 0.690 0.224 0.665 0.216 0.286 0.465 0.590 0.225 0.205 0.209 0.224 0.713 0.259
I 0.226 0.405 0.216 0.316 0.212 0.216 0.210 0.784 0.555 0.199 0.728 0.548 0.222 0.356 0.207 0.857 0.483 0.722 0.219 0.792 0.819 0.430 0.361 0.261
J 0.693 0.310 0.213 0.670 0.574 0.514 0.210 0.439 0.332 0.177 0.229 0.278 0.219 0.574 0.214 0.766 0.528 0.212 0.219 0.774 0.228 0.232 0.222 0.230
K 0.220 0.215 0.685 0.206 0.457 0.205 0.477 0.184 0.197 0.643 0.595 0.213 0.212 0.215 0.704 0.596 0.718 0.746 0.735 0.225 0.224 0.308 0.820 0.231
L 0.215 0.724 0.211 0.234 0.541 0.207 0.559 0.370 0.691 0.204 0.688 0.226 0.281 0.214 0.207 0.214 0.614 0.210 0.526 0.214 0.222 0.749 0.770 0.191
M 0.223 0.238 0.607 0.211 0.219 0.563 0.708 0.209 0.205 0.202 0.204 0.669 0.248 0.222 0.697 0.217 0.696 0.212 0.770 0.216 0.719 0.221 0.744 0.235
N 0.225 0.226 0.212 0.834 0.717 0.214 0.832 0.208 0.293 0.214 0.672 0.214 0.753 0.224 0.754 0.213 0.221 0.220 0.212 0.222 0.222 0.223 0.224 0.225
O 0.749 0.521 0.217 0.702 0.757 0.214 0.661 0.205 0.640 0.209 0.216 0.219 0.214 0.631 0.402 0.221 0.233 0.217 0.629 0.227 0.467 0.234 0.473 0.229
P 0.739 0.238 0.572 0.229 0.303 0.221 0.708 0.336 0.221 0.221 0.226 0.235 0.513 0.239 0.226 0.645 0.641 0.617 0.495 0.218 0.227 0.466 0.237 0.625
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。