TypeError: string indices must be integersというエラーが出て困っています。コードは下記のとおりです
Python
1from flask import Flask, make_response, request 2import pandas as pd 3from sklearn.preprocessing import LabelEncoder 4app = Flask(__name__) 5 6 7@app.route('/') 8def form(): 9 return """ 10 <html> 11 <body> 12 <h1>Transform a file demo</h1> 13 14 <form action="/transform" method="post" enctype="multipart/form-data"> 15 <input type="file" name="data_file" /> 16 <input type="submit" /> 17 </form> 18 </body> 19 </html> 20 """ 21 22@app.route('/transform', methods=["POST"]) 23def transform_view(): 24 request_file = request.files['data_file'] 25 if not request_file: 26 return "No file" 27 test=request_file.read().decode("utf-8") 28 train_x=pd.read_csv("C:\Users\matsu/train_x.csv") 29 train_y=pd.read_csv("C:\Users\matsu/train_y.csv") 30 train_x_drop=train_x[["職場の様子","(派遣先)配属先部署 男女比 男","大手企業", 31 "交通費別途支給","残業月20時間以上", 32 "職種コード","1日7時間以下勤務OK","短時間勤務OK(1日4h以内)", 33 "駅から徒歩5分以内","勤務地 最寄駅1(分)","勤務地 最寄駅2(沿線名)", 34 "勤務地 最寄駅2(駅からの交通手段)","期間・時間 勤務期間","派遣形態", 35 "週2・3日OK","16時前退社OK","正社員登用あり","残業月20時間未満", 36 "勤務地 備考","英語力不要","休日休暇(日曜日)", 37 "社員食堂あり","10時以降出社OK","休日休暇(祝日)","服装自由","(派遣先)配属先部署","勤務地 最寄駅1(沿線名)", 38 "会社概要 業界コード","勤務地 都道府県コード","制服あり", 39 "給与/交通費 給与上限","仕事の仕方","勤務地 最寄駅1(駅からの交通手段)", 40 "シフト勤務","週4日勤務","未経験OK", 41 "土日祝休み","給与/交通費 交通費","給与/交通費 給与下限"]] 42 test_drop=test[["職場の様子","(派遣先)配属先部署 男女比 男","大手企業", 43 "交通費別途支給","残業月20時間以上", 44 "職種コード","1日7時間以下勤務OK","短時間勤務OK(1日4h以内)", 45 "駅から徒歩5分以内","勤務地 最寄駅1(分)","勤務地 最寄駅2(沿線名)", 46 "勤務地 最寄駅2(駅からの交通手段)","期間・時間 勤務期間","派遣形態", 47 "週2・3日OK","16時前退社OK","正社員登用あり","残業月20時間未満", 48 "勤務地 備考","英語力不要","休日休暇(日曜日)", 49 "社員食堂あり","10時以降出社OK","休日休暇(祝日)","服装自由","(派遣先)配属先部署","勤務地 最寄駅1(沿線名)", 50 "会社概要 業界コード","勤務地 都道府県コード","制服あり", 51 "給与/交通費 給与上限","仕事の仕方","勤務地 最寄駅1(駅からの交通手段)", 52 "シフト勤務","週4日勤務","未経験OK", 53 "土日祝休み","給与/交通費 交通費","給与/交通費 給与下限"]] 54 for i in range(train_x_drop.shape[1]): 55 if train_x_drop.iloc[:,i].dtypes==object or train_x_drop.iloc[:,i].dtypes==bool: 56 lbl=LabelEncoder() 57 lbl.fit(list(train_x_drop.iloc[:,i].values)+list(test_drop.iloc[:,i].values)) 58 train_x_drop.iloc[:,i]=lbl.transform(list(train_x_drop.iloc[:,i].values)) 59 test_drop.iloc[:,i]=lbl.transform(list(test_drop.iloc[:,i].values)) 60 train_x_drop_1=train_x_drop.fillna(-9999) 61 test_drop_1=test_drop.fillna(-9999) 62 X_train=train_x_drop_1 63 y_train=train_y.drop("お仕事No.",axis=1) 64 X_test=test_drop_1 65 y_train=y_train.astype(np.int) 66 from sklearn.ensemble import RandomForestClassifier as RFC 67 lr=RFC(n_estimators=100,random_state=0) 68 lr.fit(X_train,y_train) 69 y_pred_train=lr.predict(X_test) 70 print(lr.score(X_train,y_train)) 71 y_pred_train=y_pred_train.astype(np.float64) 72 test["応募数 合計"]=y_pred_train_all 73 test = test[["お仕事No.","応募数 合計"]] 74 ans=test.to_csv("sample_submit.csv", index=False, encoding='utf-8') 75 76 response = make_response(ans) 77 response.headers["Content-Disposition"] = "attachment; filename=result.csv" 78 return response
File "c:\dip\dip2.py", line 56, in transform_view
"土日祝休み","給与/交通費 交通費","給与/交通費 給与下限"]]
TypeError: string indices must be integers
作りたいWebアプリはcsvファイルを読み込んで予測結果のcsvファイルを返すものです
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/02 04:52
2020/07/02 05:15