当前位置: 首页 > 知识库问答 >
问题:

如何强制所有字符串为浮动?[副本]

满雨石
2023-03-14
df = pd.read_csv('C:\\my_path\\analytics.csv')
print('done!')
modDF = df[['Price', 'Score']].copy()
modDF = modDF[:100]
for i_dataset, dataset in enumerate(datasets):
    X, y = dataset
    # normalize dataset for easier parameter selection
    X = StandardScaler().fit_transform(X)
datasets = [modDF]
for i_dataset, dataset in enumerate(datasets):
    X, y = dataset
    # normalize dataset for easier parameter selection
    X = StandardScaler().fit_transform(X)


Traceback (most recent call last):

  File "<ipython-input-18-013c2a6bef49>", line 5, in <module>
    X = StandardScaler().fit_transform(X)

  File "C:\Users\rs\AppData\Local\Continuum\anaconda3\lib\site-packages\sklearn\base.py", line 553, in fit_transform
    return self.fit(X, **fit_params).transform(X)

  File "C:\Users\rs\AppData\Local\Continuum\anaconda3\lib\site-packages\sklearn\preprocessing\data.py", line 639, in fit
    return self.partial_fit(X, y)

  File "C:\Users\rs\AppData\Local\Continuum\anaconda3\lib\site-packages\sklearn\preprocessing\data.py", line 663, in partial_fit
    force_all_finite='allow-nan')

  File "C:\Users\rs\AppData\Local\Continuum\anaconda3\lib\site-packages\sklearn\utils\validation.py", line 496, in check_array
    array = np.asarray(array, dtype=dtype, order=order)

  File "C:\Users\rs\AppData\Local\Continuum\anaconda3\lib\site-packages\numpy\core\numeric.py", line 538, in asarray
    return array(a, dtype, copy=False, order=order)

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

共有1个答案

梁盛
2023-03-14

您可以尝试使用pd.to_numeric,如下所示:

df = df.apply(pd.to_numeric, errors='coerce', downcast='float')

它将尝试将您的数据转换为float,而不是float的数据将作为nan返回

然后

df.dropna(how='any', axis=0, inplace=True)
 类似资料:
  • 问题内容: 我一点都不熟悉PHP,并且有一个简短的问题。 我有2个变量和。这是将这些设置为值的代码: 如果输出,则得到正确的值。可以说发票单位和价格。 现在,我需要显示花费的总额。当我将这两者相乘时,它不起作用(正如预期的那样,它们是字符串)。 但是我不知道如何在PHP中解析/广播/转换变量。 我该怎么办? 问题答案: 应该为你做。查看Type-Juggling。您还应该阅读将String转换为N

  • 问题内容: 我想将二进制数转换为浮点数。这是一种可能性的示例: 给我正确的输出: 不幸的是,我正在使用二进制 字符串 ,即,我需要类似的东西。 但是,这不起作用: 我尝试使用它将带引号的可打印数据块转换回二进制并返回二进制数据。但是最终,我得到了同样的错误: 我了解输出数字是整数的情况,但是如果我想获得数字12.546怎么办?那么该函数对二进制字符串的调用是什么样的? 问题答案: 另一种选择是做

  • 以下是我要应用的验证: 字符串应包含 0 到 9 之间的任何字符。 它不应包含任何字母字符。 它最多可以包含一个表示负数的“-”(减号运算符),例如“-12”。 它最多可以包含一个“.”以涵盖浮点数(如“12.2”)的情况 现在,我已经尝试了各种组合,但仍然无法在Typescript中创建这样的条件。以下是我的尝试: 使用正则表达式/^[0-9.{0,1}-{0,1}]/. test(mystri

  • 如何将“4,250,000.40”转换为4,250,000.40,即通过保留逗号和点将字符串转换为数字?使用JavaScript

  • 我想做一个函数,将字符串添加到字符串中 我这样尝试过: 主要功能 在addLine(字符串文本,字符串行) 我知道=在java中的String make new实例之间的操作。但是,上层代码不起作用。 我如何制作一个向字符串添加字符串的函数?