gpt4 book ai didi

python - 如何修复指出字符串无法转换为 float 的值错误

转载 作者:行者123 更新时间:2023-12-01 07:44:36 26 4
gpt4 key购买 nike

运行代码以使用 pandas 打开 csv 文件并将其转换为浮点值列表时,总是会发生此错误,我尝试了几种方法,但它不起作用

import csv
import random
import math
import pandas as pd

def loadCsv():
import pandas as pd
lines = pd.read_csv(r"C:\Users\apoor\OneDrive\Documents\apoorv.csv")
dataset = list(lines)
for i in range(len(dataset)):
dataset[i] = [float(x) for x in dataset[i]]
return dataset

dataset=loadCsv()
print(dataset)

每次发生此错误

File "C:/Users/apoor/.spyder-py3/untitled2.py", line 11, in <listcomp>
dataset[i] = [float(x) for x in dataset[i]]

ValueError: could not convert string to float: '.'

最佳答案

数据集[i] = [float(x) for x in dataset[i]]

在这里,您将dataset 的每个元素转换为float,其中某些元素无法转换为float。例如,一个元素可能包含空格或其他无法转换为 float 的无效字符。

要解决此问题,您可以使用 try catch 来处理此异常,或者您可以确保数据集的任何元素都不包含任何无法转换为字符串的字符。

让我们替换这一行:

数据集[i] = [float(x) for x in dataset[i]]

到以下几行:

for i, x in dataset:
try:
dataset[i] = float(x)
except ValueError:
print 'Invalid string to convert into float'

现在,您将看到哪个索引处的哪个值发生了该错误,而不是值错误。正如您现在正在处理异常一样。

关于python - 如何修复指出字符串无法转换为 float 的值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56519965/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com