#python #pandas #string #dataframe #floating-point
#питон #панды #строка #фрейм данных #с плавающей запятой
Вопрос:
Я пытаюсь преобразовать значение всех ячеек (кроме даты) в число с плавающей запятой, я могу успешно преобразовать первые 3 столбца, но получаю ошибку в последнем:
Вот мой код:
df['Market Cap_' str(coin)] = df['Market Cap_' str(coin)].str.replace(',','').str.replace('
Вот df.info()
:
lt;class 'pandas.core.frame.DataFrame'gt; Int64Index: 30 entries, 1 to 30 Data columns (total 5 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Date_ETHEREUM 30 non-null datetime64[ns] 1 Market Cap_ETHEREUM 30 non-null float64 2 Volume_ETHEREUM 30 non-null float64 3 Open_ETHEREUM 30 non-null float64 4 Close_ETHEREUM 30 non-null object dtypes: datetime64[ns](1), float64(3), object(1) memory usage: 1.4 KB
И вот в чем ошибка:
AttributeError: Можно использовать метод доступа .str только со строковыми значениями!
Как вы можете видеть, тип столбца-это объект (такой же, как и у других до преобразования, но в этом случае я получаю ошибку).
Комментарии:
1. в этом столбце может быть еще один дополнительный символ, который вы не заменяете, как вы делаете для
,
и$
, и поэтому его невозможно преобразовать. Попробуйте узнать больше о данных в этом столбце2. всегда ставьте полное сообщение об ошибке (начинающееся со слова "Отслеживание") в вопросе (не в комментариях) в виде текста (не скриншот, не ссылка на внешний портал). Есть и другая полезная информация.
3. ошибка может означать, что у вас значение, отличное от строки, то есть целочисленное значение, и оно не может использовать строковую функцию с этим значением
, '').astype(float) df['Volume_' str(coin)] = df['Volume_' str(coin)].str.replace(',','').str.replace('Вот df.info()
:
И вот в чем ошибка:
AttributeError: Можно использовать метод доступа .str только со строковыми значениями!
Как вы можете видеть, тип столбца-это объект (такой же, как и у других до преобразования, но в этом случае я получаю ошибку).
Комментарии:
1. в этом столбце может быть еще один дополнительный символ, который вы не заменяете, как вы делаете для
,
и$
, и поэтому его невозможно преобразовать. Попробуйте узнать больше о данных в этом столбце2. всегда ставьте полное сообщение об ошибке (начинающееся со слова "Отслеживание") в вопросе (не в комментариях) в виде текста (не скриншот, не ссылка на внешний портал). Есть и другая полезная информация.
3. ошибка может означать, что у вас значение, отличное от строки, то есть целочисленное значение, и оно не может использовать строковую функцию с этим значением
, '').astype(float) df['Open_' str(coin)] = df['Open_' str(coin)].str.replace(',','').str.replace('
Вот df.info()
:
И вот в чем ошибка:
AttributeError: Можно использовать метод доступа .str только со строковыми значениями!
Как вы можете видеть, тип столбца-это объект (такой же, как и у других до преобразования, но в этом случае я получаю ошибку).
Комментарии:
1. в этом столбце может быть еще один дополнительный символ, который вы не заменяете, как вы делаете для
,
и$
, и поэтому его невозможно преобразовать. Попробуйте узнать больше о данных в этом столбце2. всегда ставьте полное сообщение об ошибке (начинающееся со слова "Отслеживание") в вопросе (не в комментариях) в виде текста (не скриншот, не ссылка на внешний портал). Есть и другая полезная информация.
3. ошибка может означать, что у вас значение, отличное от строки, то есть целочисленное значение, и оно не может использовать строковую функцию с этим значением
, '').astype(float) df['Close_' str(coin)] = df['Close_' str(coin)].str.replace(',','').str.replace('Вот df.info()
:
И вот в чем ошибка:
AttributeError: Можно использовать метод доступа .str только со строковыми значениями!
Как вы можете видеть, тип столбца-это объект (такой же, как и у других до преобразования, но в этом случае я получаю ошибку).
Комментарии:
1. в этом столбце может быть еще один дополнительный символ, который вы не заменяете, как вы делаете для
,
и$
, и поэтому его невозможно преобразовать. Попробуйте узнать больше о данных в этом столбце2. всегда ставьте полное сообщение об ошибке (начинающееся со слова "Отслеживание") в вопросе (не в комментариях) в виде текста (не скриншот, не ссылка на внешний портал). Есть и другая полезная информация.
3. ошибка может означать, что у вас значение, отличное от строки, то есть целочисленное значение, и оно не может использовать строковую функцию с этим значением
, '').astype(float)
Вот df.info()
:
И вот в чем ошибка:
AttributeError: Можно использовать метод доступа .str только со строковыми значениями!
Как вы можете видеть, тип столбца-это объект (такой же, как и у других до преобразования, но в этом случае я получаю ошибку).
Комментарии:
1. в этом столбце может быть еще один дополнительный символ, который вы не заменяете, как вы делаете для
,
и$
, и поэтому его невозможно преобразовать. Попробуйте узнать больше о данных в этом столбце2. всегда ставьте полное сообщение об ошибке (начинающееся со слова «Отслеживание») в вопросе (не в комментариях) в виде текста (не скриншот, не ссылка на внешний портал). Есть и другая полезная информация.
3. ошибка может означать, что у вас значение, отличное от строки, то есть целочисленное значение, и оно не может использовать строковую функцию с этим значением