前提・実現したいこと
for in 構文でフォルダ内のcsvファイルをループ処理しているのですが,
ループを繰り返すたびに,ファイルが上書きされてしまいファイルが
一つしか得られません。
if構文で条件を満たしたファイルを,指定したフォルダに
elseで条件を満たさなかったファイルを指定したフォルダにそれぞれ保存がしたいです。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
if len(card_and_measure) >=3:
print("成功")
data.to_csv('TA2.csv', index=False, encoding='SHIFT_JIS')
else:
print("不可")
python3.7
1import pandas as pd 2import glob 3import os 4 5for file in glob.glob('TA*.csv'): #file内のcsvファイルを検索し全て読み混む 6 7 basename = os.path.basename(file) 8 9 name = os.path.splitext(basename)[0] 10 11 data = pd.read_csv(file, 12 names=["2θ", "Intensity"], 13 encoding="SHIFT_JIS") 14 15 16 mycsv = pd.read_csv('TA.csv', names=["2θ", "Intensity"], encoding="SHIFT_JIS")#ヘッダーがないため追加 17 18 card = mycsv.sort_values(by="Intensity", ascending=False)#Intensityの行をascending=Falseによって降順に並び替え 19 measure = data.sort_values(by="Intensity", ascending=False).head(50)#降順の上から100個のみを取り出し 20 21 measure_x = measure.iloc[:,0] 22 card_x = card.iloc[:,0] 23 card_measure_and = set(card_x) & set(measure_x) 24 card_and_measure = list(card_measure_and) 25 26 if len(card_and_measure) >=3: 27 print("成功") 28 data.to_csv('TA2.csv', index=False, encoding='SHIFT_JIS') 29 else: 30 print("不可") 31
試したこと
空のリストの作製などしましたが,いまいち理解できず諦めてしまいました。
補足情報(FW/ツールのバージョンなど)
python 3.7, spyder
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/30 03:26
2020/11/30 03:57
2020/11/30 04:09