我有一個CSV文件,需要刪除或只是跳過或用0
替換一些缺失的數據,在列表中表示爲None
。 CSV文件中的Row1 = [1, 2, 3, 4, none, 5, 6, 7, 8, 9]
和row2 = [1, 2, 3, 4, 5, 6, none, 7, 8, 9]
。刪除或跳過列表中的項目
counter=0
for lines in csv:
list_all=lines.split(',')
list_all=lines.strip()
counter+=1
for ch in range(len(list_all)):
if list_all[ch]=='?':
list_all.replace('?',0)
list_0=float(list_all[0])
list0.append(list_0)
avelist0=(sum(list0)/counter)
我需要得到每列的所有值的總和;當然不包括None
。我不斷收到一個錯誤:
TypeError: Can't convert 'int' object to str implicitly.
我還是新來的Python,我想用for
循環,如果能夠做到這一點。我無法使用列表解析。
因此第二個列表的第一個列表的平均值應該是22.5
和22.5
。
你需要用字符串「0」替換「?」,而不是數字「0」。 – TigerhawkT3
請注意,您將得到不同的平均值來跳過'None',而不是將它們替換爲零... – jonrsharpe
問題是隻替換第一個而不是全部 –