[英]ValueError: could not convert string to float: 'no'
在對一些銀行數據實施邏輯回歸時,我遇到了一個錯誤ValueError: could not convert string to float: 'no' 。 這是我到目前為止嘗試過的代碼。
bank_full=pd.read_csv("/home/bilal/Desktop/linkedinlearning/recommendation-system-python/bank/bank-full.csv")
bank_full.head()
X=bank_full.iloc[:,:37].values
y=bank_full.iloc[:,:18].values
Logreg=LogisticRegression()
Logreg.fit(X,y) #ERROR HERE.
聽起來您的數據中有一個值,它應該是一個數字,但實際上是一個名為“no”的字符串。 在將數據從字符串轉換為浮點數之前,也許可以快速檢查一下數據。
此錯誤意味着您的數據中有一些行不包含有效的浮點數據,特別是包含字符串no
的行。
我建議使用for
循環遍歷您的數據以檢查哪些行是導致錯誤的行,如下所示:
for i in data:
try:
i = float(i)
print(i)
except:
print("Invalid data.")
如果您使用銀行營銷數據集,則 target(y) 值被編碼為“是”和“否”。 你可以這樣做:
bank.loc[bank.y == "yes", 'subscribe'] = 1
bank.loc[bank.y == "no", 'subscribe'] = 0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.