Closed QuantKang closed 4 months ago
처음 쓴 내용에서는 tail을 그대로 호출하신 듯 합니다. 다음 두 가지의 차이가 아닌지 확인 부탁 드려요.
df.tail
df.tail()
>>> df.tail
<bound method NDFrame.tail of TSLA TSL3.L
Date
2010-06-29 1.592667 NaN
2010-06-30 1.588667 NaN
2010-07-01 1.464000 NaN
2010-07-02 1.280000 NaN
2010-07-06 1.074000 NaN
... ... ...
2024-02-28 202.039993 25.712610
2024-02-29 201.880005 25.641140
2024-03-01 202.639999 25.920561
2024-03-04 188.139999 20.324699
2024-03-05 178.960007 17.129000
>>> df.tail()
TSLA TSL3.L
Date
2024-02-28 202.039993 25.712610
2024-02-29 201.880005 25.641140
2024-03-01 202.639999 25.920561
2024-03-04 188.139999 20.324699
2024-03-05 178.960007 17.129000
확인해 보니 tail 문제는 아닌 듯 합니다.
df = fdr.DataReader('TSLA, TSL3.L')
df
TSLA TSL3.L
Date
2010-06-29 1.592667 NaN
2010-06-30 1.588667 NaN
2010-07-01 1.464000 NaN
2010-07-02 1.280000 NaN
2010-07-06 1.074000 NaN
... ... ...
2023-07-04 NaN 0.563530
2023-09-04 NaN 0.325840
2023-11-23 NaN 0.231000
2024-01-15 NaN 0.177660
2024-02-19 NaN 25.283609
아래와 같이 조회한 데이터를 iloc
으로 바로 사용하는 경우 예상과 다른 결과가 나올 수 있습니다.
df.iloc[-5: ]
TSLA TSL3.L
Date
2023-07-04 NaN 0.563530
2023-09-04 NaN 0.325840
2023-11-23 NaN 0.231000
2024-01-15 NaN 0.177660
2024-02-19 NaN 25.283609
df.sort_index().iloc[-5: ]
TSLA TSL3.L
Date
2024-02-28 202.039993 25.712610
2024-02-29 201.880005 25.641140
2024-03-01 202.639999 25.920561
2024-03-04 188.139999 20.324699
2024-03-05 180.740005 17.129000
현재, 아래와 같이 잘 수행되고 말씀 하신 내용으로 재현이 안됩니다. (Colab과 로컬 PC 양쪽에서 테스트 하였습니다)
import FinanceDataReader as fdr
df = fdr.DataReader('TSLA, TSL3.L')
df
TSLA TSL3.L
Date
2010-06-29 1.592667 NaN
2010-06-30 1.588667 NaN
2010-07-01 1.464000 NaN
2010-07-02 1.280000 NaN
2010-07-06 1.074000 NaN
... ... ...
2024-03-04 188.139999 20.324699
2024-03-05 180.740005 17.915140
2024-03-06 176.539993 16.658560
2024-03-07 178.649994 17.249041
2024-03-08 175.339996 16.216999
3466 rows × 2 columns
df.iloc[-5:]
TSLA TSL3.L
Date
2024-03-04 188.139999 20.324699
2024-03-05 180.740005 17.915140
2024-03-06 176.539993 16.658560
2024-03-07 178.649994 17.249041
2024-03-08 175.339996 16.216999
df.sort_index()[-5:]
TSLA TSL3.L
Date
2024-03-04 188.139999 20.324699
2024-03-05 180.740005 17.915140
2024-03-06 176.539993 16.658560
2024-03-07 178.649994 17.249041
2024-03-08 175.339996 16.216999
해상 데이터 사이트의 일시적인 문제이거나 업데이트의 문제일 수 있습니다.
다시 수행해봐주시거나 업데이트 하고 수행해 보시는 것도 해봐주시면 감사합니다.
pip install -U finance-datareader
다른 라이브러리 버전이 문제였던 것 같습니다.
모든 라이브러리를 업데이트하니 해당 문제가 사라졌습니다.
확인 감사드립니다.
여러 종목을 한 번에 가져올 때 정렬이 유지되지 않는 경우가 있습니다. (
TSLA
는 미국 주식,TSL3.L
은 영국 주식입니다)dropna()
나reset_index()
를 해야 순서가 다시 제대로 설정됩니다.