값 오류 : 문자열을 부동 소수점으로 변환 할 수 없습니다.

까치

두 개의 입력 스프레드 시트가 있습니다.

시트 1에는 7 개의 열과 3 개의 행이 있습니다.

     / FID  / Total       / A1          / B1  /     A2      / B2 
   1 / 1   / 0.720168405 / 0.635589112 / XXX / 0.031112358 / YYY
   1 / 2  / 0.760438562 / 0.328168557 / YYY / 0.311172576 / ZZZ 

시트 2에는 2 개의 열과 4 개의 행이 있습니다.

       /  0
  XXX  /  0.55
  YYY  / 0.52
  ZZZ  / 0.35

다음은 코드입니다.

import pandas as pd

df = pd.read_excel("C:/Users/Sheet1.xls")

df2 = pd.read_excel("C:/Users/Sheet2.xlsx")

dictionary = df2.to_dict(orient='dict')

b = df.filter(like ='A').values
c = df.filter(like ='B').replace(dictionary[0]).astype(float).values

df['AA'] = ((c * b).sum(axis =1))

df['BB'] = df.AA / df.Total

def custom_round(x, base=5):
    return base * round(float(x)/base)

df['C'] = df['BB'].apply(lambda x: custom_round(x, base=.05))
df['C'] = "X = " + df['C'].apply(lambda s: '{:,.2f}'.format(s))

df.to_excel("C:/Users/Results.xlsx")

print(df)


오류 메시지가 나타납니다. 값 오류는 문자열을 부동 소수점으로 변환 할 수 없습니다. XXX

ValueError                                Traceback (most recent call last)
<ipython-input-1-f42c7cb99da5> in <module>()
      8 
      9 b = df.filter(like ='A').values
---> 10 c = df.filter(like ='B').replace(dictionary[0]).astype(float).values
     11 
     12 df['AA'] = ((c * b).sum(axis =1))

C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\generic.pyc in astype(self, dtype, copy, errors, **kwargs)
   5689             # else, only a single dtype is given
   5690             new_data = self._data.astype(dtype=dtype, copy=copy, errors=errors,
-> 5691                                          **kwargs)
   5692             return self._constructor(new_data).__finalize__(self)
   5693 

C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\internals\managers.pyc in astype(self, dtype, **kwargs)
    529 
    530     def astype(self, dtype, **kwargs):
--> 531         return self.apply('astype', dtype=dtype, **kwargs)
    532 
    533     def convert(self, **kwargs):

C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\internals\managers.pyc in apply(self, f, axes, filter, do_integrity_check, consolidate, **kwargs)
    393                                             copy=align_copy)
    394 
--> 395             applied = getattr(b, f)(**kwargs)
    396             result_blocks = _extend_blocks(applied, result_blocks)
    397 

C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\internals\blocks.pyc in astype(self, dtype, copy, errors, values, **kwargs)
    532     def astype(self, dtype, copy=False, errors='raise', values=None, **kwargs):
    533         return self._astype(dtype, copy=copy, errors=errors, values=values,
--> 534                             **kwargs)
    535 
    536     def _astype(self, dtype, copy=False, errors='raise', values=None,

C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\internals\blocks.pyc in _astype(self, dtype, copy, errors, values, **kwargs)
    631 
    632                     # _astype_nansafe works fine with 1-d only
--> 633                     values = astype_nansafe(values.ravel(), dtype, copy=True)
    634 
    635                 # TODO(extension)

C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\dtypes\cast.pyc in astype_nansafe(arr, dtype, copy, skipna)
    700     if copy or is_object_dtype(arr) or is_object_dtype(dtype):
    701         # Explicit copy, or required since NumPy can't view from / to object.
--> 702         return arr.astype(dtype, copy=True)
    703 
    704     return arr.view(dtype)

ValueError: could not convert string to float: XXX
아마 게스와 란

코드의 6 번째 줄에서 데이터 프레임의 일부 집합 (XXX, YYY, ..에서 0.55, 0.52, ..)을 바꾸려고합니다. 하지만 결국 키가 실제로 배열 인덱스 인 {0:55, 1:52, ..} 사전을 제공하게됩니다.

쉽게 색인화하기 위해 시트 2 헤더를 변경했습니다.

0 / 1 XXX / 0.55 YYY / 0.52 ZZZ / 0.35

라인 4를 다음과 같이 대체하여 기존 열 0을 사용하여 인덱스를 설정하십시오.

dictionary = df2.set_index(0)[1].to_dict()

그리고 당신의 라인 6은,

c = df.filter(like ='B').replace(dictionary).astype(float).values

이것은 데이터 프레임을 대체하기 위해 적절한 사전을 제공했습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

오류 : 문자열을 부동 소수점으로 변환 할 수 없음-Django

분류에서Dev

오류를 피하는 방법 : 문자열을 부동 소수점으로 변환 할 수 없습니다.

분류에서Dev

Panda Python 오류 : 문자열을 부동 소수점으로 변환 할 수 없습니다.

분류에서Dev

ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다.

분류에서Dev

ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다 : '.'

분류에서Dev

Python : 문자열을 부동 오류로 변환 할 수 없습니다.

분류에서Dev

오류 해결 : 문자열을 부동 소수점으로 변환 할 수 없음 : '0.1222000000 * 10e1'

분류에서Dev

Python (pyspark) 오류 = ValueError : 문자열을 부동 소수점으로 변환 할 수 없음 : "17"

분류에서Dev

"ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다"를 수정하는 방법?

분류에서Dev

문자열을 부동으로 변환 할 수 없습니다.

분류에서Dev

Pandas dataframe .at ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다.

분류에서Dev

Dataframe ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다.

분류에서Dev

SMOTE-문자열을 부동 소수점으로 변환 할 수 없습니다.

분류에서Dev

혼란스러운 파이썬-문자열을 부동 소수점으로 변환 할 수 없습니다.

분류에서Dev

ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다 : '$ 39.99'

분류에서Dev

ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다 : '1'

분류에서Dev

Python ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다.

분류에서Dev

ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다 : '상태'

분류에서Dev

ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다 : 'FEE'

분류에서Dev

의 ValueError는 문자열을 부동 소수점으로 변환 할 수 없습니다 : [0.0, 0.0, 0.0, 0.0,

분류에서Dev

"문자열을 부동 소수점으로 변환 할 수 없음"오류가 발생하면서 두 행의 데이터를 플롯하려고합니다.

분류에서Dev

오류 : "[문자열]"유형의 값을 예상 인수 유형 "문자열"로 변환 할 수 없습니다.

분류에서Dev

문자열을 부동 소수점으로 변환 할 수 없음 : 'CC6000'

분류에서Dev

문자열을 부동 소수점으로 변환 할 수 없음 : ... 가끔

분류에서Dev

문자열을 부동 소수점으로 변환 할 수 없음 : 'f'및 오류가 지역 변수와 관련됨

분류에서Dev

부동 소수점 값을 문자열로 변환 할 때 왜 'E'문자가 있습니까?

분류에서Dev

knn 알고리즘을 사용하는 동안 (문자열을 부동 소수점으로 변환 할 수 없음) 오류

분류에서Dev

Python의 로지스틱 회귀 오류 : ValueError : 문자열을 부동 소수점으로 변환 할 수 없음 : 'concavity_worst'

분류에서Dev

반올림 오류없이 특정 정밀도로 숫자 문자열을 부동 소수점으로 변환

Related 관련 기사

  1. 1

    오류 : 문자열을 부동 소수점으로 변환 할 수 없음-Django

  2. 2

    오류를 피하는 방법 : 문자열을 부동 소수점으로 변환 할 수 없습니다.

  3. 3

    Panda Python 오류 : 문자열을 부동 소수점으로 변환 할 수 없습니다.

  4. 4

    ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다.

  5. 5

    ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다 : '.'

  6. 6

    Python : 문자열을 부동 오류로 변환 할 수 없습니다.

  7. 7

    오류 해결 : 문자열을 부동 소수점으로 변환 할 수 없음 : '0.1222000000 * 10e1'

  8. 8

    Python (pyspark) 오류 = ValueError : 문자열을 부동 소수점으로 변환 할 수 없음 : "17"

  9. 9

    "ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다"를 수정하는 방법?

  10. 10

    문자열을 부동으로 변환 할 수 없습니다.

  11. 11

    Pandas dataframe .at ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다.

  12. 12

    Dataframe ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다.

  13. 13

    SMOTE-문자열을 부동 소수점으로 변환 할 수 없습니다.

  14. 14

    혼란스러운 파이썬-문자열을 부동 소수점으로 변환 할 수 없습니다.

  15. 15

    ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다 : '$ 39.99'

  16. 16

    ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다 : '1'

  17. 17

    Python ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다.

  18. 18

    ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다 : '상태'

  19. 19

    ValueError : 문자열을 부동 소수점으로 변환 할 수 없습니다 : 'FEE'

  20. 20

    의 ValueError는 문자열을 부동 소수점으로 변환 할 수 없습니다 : [0.0, 0.0, 0.0, 0.0,

  21. 21

    "문자열을 부동 소수점으로 변환 할 수 없음"오류가 발생하면서 두 행의 데이터를 플롯하려고합니다.

  22. 22

    오류 : "[문자열]"유형의 값을 예상 인수 유형 "문자열"로 변환 할 수 없습니다.

  23. 23

    문자열을 부동 소수점으로 변환 할 수 없음 : 'CC6000'

  24. 24

    문자열을 부동 소수점으로 변환 할 수 없음 : ... 가끔

  25. 25

    문자열을 부동 소수점으로 변환 할 수 없음 : 'f'및 오류가 지역 변수와 관련됨

  26. 26

    부동 소수점 값을 문자열로 변환 할 때 왜 'E'문자가 있습니까?

  27. 27

    knn 알고리즘을 사용하는 동안 (문자열을 부동 소수점으로 변환 할 수 없음) 오류

  28. 28

    Python의 로지스틱 회귀 오류 : ValueError : 문자열을 부동 소수점으로 변환 할 수 없음 : 'concavity_worst'

  29. 29

    반올림 오류없이 특정 정밀도로 숫자 문자열을 부동 소수점으로 변환

뜨겁다태그

보관