2017-10-18 6 views
1

私はファンタジーサッカーの予測モデルを構築しています。美しいスープを使ってウェブサイトを削り、リストにデータを解析し、データフレームを作成し、2つの列に適切なリストを設定しました。解析コードは次のようになります。リストからアイテムを含むパンダデータフレームを記入する

stats = [] 
team_list = [] 
vs_list = [] 
for idx in range(len(parsed_stats)): 
    try: 
     stats.append(float(parsed_stats[idx][0])) 
    except: 
     if len(parsed_stats[idx]) > 1: 
      team_list.append(parsed_stats[idx][4]) 
      vs_list.append(parsed_stats[idx+1][0].replace('@', '')) 

qb.team, qb.vs = team_list, vs_list 

が、私はそう移入する必要がある38行を持っている今、私のデータフレームのヘッドは次のようになります。

player_id name team vs ffpts patt pcmp pyds ptds pint p2 ratt ryds rtds r2 fum td 
0 1 Matt Ryan Atl KC 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 
1 2 Tony Romo Dal NYG 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 
2 3 Robert Griffin III Griffin, NO 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 
3 4 Drew Brees NO Was 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 
4 5 Mark Sanchez NYJ Buf 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 

ゼロデータ内に充填する必要があります統計情報リストの項目。右のセルに

for idx,row in enumerate(qb.values): 
    count = 4 
    while count < 17: 
     for val in stats: 
      qb.iloc[idx,count] = val 
     count +=1 

ループポイントが、ゼロではなく、統計項目とデータフレーム全体を充填する:私は正しくインデックスループは、このネストされた符号化。 parsed_statsリストと残りのコードは私のgit hubにあります: my git hub アイデア?

+0

ちょうどフィードバックを与えて、私は 'parsed_stats'が何であるか分かりません。私は実験をするためにこれを提供すると期待しています。私はあなたのデータフレームを解析することはできません....これは、私があなたに手伝ってくれるよう努力しなければならないことに相当します。 – piRSquared

+0

フィードバックをいただきありがとうございます。私は自分のgit hubを含めるように投稿を編集しました。あなたはそれを見つけることができます。再度、感謝します。 –

答えて

0

vsという名前の列があるため、最初のデータフレームを作成する前に、最後の列の名前をvs_2に変更しました。その後、次のように動作しているようです:

remaining_columns = columns[4:] 
for num, col in enumerate(remaining_columns, start=2): 
    print(num, col) 
    # Flatten the list and assign it to the relevant column 
    flat_list = [item for sublist in parsed_stats[num:][::19] for item in sublist] 
    qb[col] = flat_list 
qb.iloc[0] 
 
player_id   1 
name   Matt Ryan 
team    Atl 
vs     KC 
ffpts   37.00 
pass_att   31 
pass_comp   23 
pass_yds   299 
pass_tds    3 
int     0 
pass2    0 
rush_att    3 
rush_yds   25 
rush_tds    1 
rush_2    0 
rec     0 
rec_yds    0 
rec_tds    0 
rec_2    0 
fum     0 
vs_2     0 
Name: 0, dtype: object 

すべてが正しい順序にし、数字が意味をなす、私はそれを評価するアメリカンフットボールと十分慣れていないだということであることを再確認してください。

+0

すごい男。ありがとう、兄弟!!!! –

関連する問題