2016-05-14 6 views
1

タイトルによれば、 "?"それを上回ったときにそれをゼロとして数えます。「?」を作る方法数に等しいので、私はリストを通過します。それはゼロとしてカウントされます。 (Python)

for eachLine in train: 
    tempList=eachLine.split(',') 
    avg0=float(tempList[0]) 
    ageL.append(avg0) 
    avg1=float(tempList[1]) 
    sL.append(avg1) 
    avg2=float(tempList[2]) 
    rbsL.append(avg2) 
    avg3=float(tempList[3]) 
    fbsL.append(avg3) 
    avg4=float(tempList[4]) 
    ogtL.append(avg4) 
    avg5=float(tempList[5]) 
    hemo.append(avg5) 

私はその醜いが、私のために働く。どんな助けでも感謝します、ありがとう。

+0

を各フロートコールを置き換えます? –

+1

@Gary'SStudent、Python。私の悪い。 – Mell0w

+0

データはどのように見えるのですか? – rkatkam

答えて

2

あなたがしたいことがわかっている場合は、各セルを解析して値の浮動小数点数を返すか、疑問符をチェックする関数を作成する必要があります。その後

def parse_cell(cell): 
    try: 
     return float(cell) 
    except ValueError: 
     if cell == "?": 
      return 0.0 
     raise 

あなたはどのような言語のプログラミングをしているこの機能を、すなわち

avg0 = parse_cell(tempList[0]) 
-1
directory = [ageL, sL, rbsL, fbsL, ogtL, hemo] 
for eachLine in train: 
    tempList=eachLine.split(',') 
    for idx, data in tempList: 
     try: 
      directory[idx].append(float(data)) 
     except ValueError: 
      directory[idx].append(0.) 
+1

これはどのように質問に答えますか? – TZHX

+0

このコードは質問に答えるかもしれませんが、いくつかの文脈を含めると、それがどのように動作し、いつ使用するかを説明する方が良いでしょう。コードのみの回答は長期的には有用ではありません。 – Bono