가능한 판다 버그?

Myccha

Python / Pandas에서 이상한 동작을보고 있습니다.

설정이 복잡하다는 것을 알고 있습니다. 몇 가지 도전을하고있었습니다.

def lucas_n(n):
    '''Return the fist n lucas numbers modulo 1_000_007'''
    my_list = [1,3]
    while len(my_list) < n:
        my_list.append((my_list[-1]+my_list[-2])%1_000_007)
    return my_list

def f(seq):
    '''Look up https://projecteuler.net/problem=739'''
    
    df = pd.Series(seq)
    
    for i in range(len(seq)-1):
        df = df.iloc[1:].cumsum()
        
    return df.iloc[0]

x = lucas_n(1e4)

f(x)

>>> -8402283173942682253

즉, x양의 정수 시퀀스이며 f연속 .iloc[1:].cumsum()연산을 적용 합니다.

그리고 출력은 음수입니다 ...

이것은 버그입니까? 데이터 유형 문제?

포장하다

정수 오버플로가있는 것 같습니다. Python 자체에서 정수는 임의 정밀도를 가질 수 있지만 pandas / numpy는 기본적으로 C 데이터 유형을 사용하므로 오버플로가 발생할 수 있습니다.

여기에 링크 설명 입력

이 문제를 해결하기 위해 데이터를 Python 정수로 수동 캐스트 할 수 있습니다.

def f(seq):
    '''Look up https://projecteuler.net/problem=739'''
    
    df = pd.Series(seq).astype('int') # Casting to Python integer type
    
    for i in range(len(seq)-1):
        df = df.iloc[1:].cumsum()
        
    return df.iloc[0]

이것은 내 테스트에서 오버플로 문제를 해결합니다.

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

다중 캔버스, 재사용 가능한 그라디언트

분류에서Dev

람다에서 벡터 배열 캡처 : 가능한 GCC 버그?

분류에서Dev

Git rebase 가능한 버그

분류에서Dev

getValidationMessages의 가능한 버그

분류에서Dev

Tableview의 가능한 버그

분류에서Dev

가능한 다목적 서버?

분류에서Dev

Eclipse가 중단 점에서 중지되지만 사용 가능한 디버그 기능이 없습니다.

분류에서Dev

Django 1.11에서 다중 테이블 상속이 가능한 버그 또는 Python 3.5에서 가능한 버그입니까?

분류에서Dev

평가판 코드의 이상한 버그

분류에서Dev

판다-한 항목이 다를 때 플래그 지정

분류에서Dev

계산 날짜 차이에 dataframe 그룹화 기능을 판다

분류에서Dev

다시 그리지 않고 바둑판 식 맵으로 캔버스 무한 스크롤

분류에서Dev

판다에 대한 색인 일치를 능가합니다.

분류에서Dev

버전 0.24.1에서 판다 교체에 대한 해결 방법

분류에서Dev

디버그 중에 백그라운드 작업자 / 스레드로 이동합니다. 가능한?

분류에서Dev

드래그 할 때마다 드래그 가능한 버튼이 RelativeLayout에서 벗어남

분류에서Dev

드래그 할 때마다 드래그 가능한 버튼이 RelativeLayout에서 벗어남

분류에서Dev

GLSL Fragment Shader를 가능한 가장 낮은 버전으로 다운 그레이드 (최소 GLSL 3.3)

분류에서Dev

PHP 날짜 가능한 버그

분류에서Dev

TF_NewTensor Segmentation Fault : 가능한 버그?

분류에서Dev

as.POSIXct의 가능한 버그

분류에서Dev

가능한 버그 또는 누락

분류에서Dev

가능한 MSVC 컴파일러 버그

분류에서Dev

R :`factor`의 가능한 버그?

분류에서Dev

RavenDB EmbeddableDocumentStore의 가능한 버그

분류에서Dev

NSDateComponents에서 가능한 버그?

분류에서Dev

Matlab 연결 가능한 버그

분류에서Dev

Breeze 1.4.14의 가능한 버그

분류에서Dev

XCode 6.1 가능한 인덱싱 버그?

Related 관련 기사

  1. 1

    다중 캔버스, 재사용 가능한 그라디언트

  2. 2

    람다에서 벡터 배열 캡처 : 가능한 GCC 버그?

  3. 3

    Git rebase 가능한 버그

  4. 4

    getValidationMessages의 가능한 버그

  5. 5

    Tableview의 가능한 버그

  6. 6

    가능한 다목적 서버?

  7. 7

    Eclipse가 중단 점에서 중지되지만 사용 가능한 디버그 기능이 없습니다.

  8. 8

    Django 1.11에서 다중 테이블 상속이 가능한 버그 또는 Python 3.5에서 가능한 버그입니까?

  9. 9

    평가판 코드의 이상한 버그

  10. 10

    판다-한 항목이 다를 때 플래그 지정

  11. 11

    계산 날짜 차이에 dataframe 그룹화 기능을 판다

  12. 12

    다시 그리지 않고 바둑판 식 맵으로 캔버스 무한 스크롤

  13. 13

    판다에 대한 색인 일치를 능가합니다.

  14. 14

    버전 0.24.1에서 판다 교체에 대한 해결 방법

  15. 15

    디버그 중에 백그라운드 작업자 / 스레드로 이동합니다. 가능한?

  16. 16

    드래그 할 때마다 드래그 가능한 버튼이 RelativeLayout에서 벗어남

  17. 17

    드래그 할 때마다 드래그 가능한 버튼이 RelativeLayout에서 벗어남

  18. 18

    GLSL Fragment Shader를 가능한 가장 낮은 버전으로 다운 그레이드 (최소 GLSL 3.3)

  19. 19

    PHP 날짜 가능한 버그

  20. 20

    TF_NewTensor Segmentation Fault : 가능한 버그?

  21. 21

    as.POSIXct의 가능한 버그

  22. 22

    가능한 버그 또는 누락

  23. 23

    가능한 MSVC 컴파일러 버그

  24. 24

    R :`factor`의 가능한 버그?

  25. 25

    RavenDB EmbeddableDocumentStore의 가능한 버그

  26. 26

    NSDateComponents에서 가능한 버그?

  27. 27

    Matlab 연결 가능한 버그

  28. 28

    Breeze 1.4.14의 가능한 버그

  29. 29

    XCode 6.1 가능한 인덱싱 버그?

뜨겁다태그

보관