안녕하세요?

 

지난번 포스팅에서 어떻게 observe라는 함수를 거치고 나니까, 원래는 데이터 프레임이라는 형티의 데이터 형식이어야 하는 데이터가 판다스 시리즈형태로 변형이 된 것을 확인할 수 있었습니다. 이래서는 상황이 곤란하기에 하는 수 없이 이번 포스팅에서는 이 문제를 해결하는 형태로 나아가고자 합니다.

먼저 위 스크린샷에서 나오는 것처럼 일단 self.idx라고 인덱스를 의미하는 변수에다가 []를 2번 쳐 주도록 합니다. 이게 정확히는 무슨 의미가 있는지는 모르겠지만, 듣자니 이 형태로 선택을 하면 데이터 프레임으로 return이 된다고 합니다.

이렇게 해서 일단 마지막으로 제대로 column이 있는 형태로 나오는 것을 확인할 수 있었습니다. 그래서 형태는 제대로 나온 듯 하니까, 이제 계산이 제대로 되는지 알아보러 갑니다.

일단 close라는 column안에 있는 내용을 하나도 가지고 오지 못하기에, 위 스크린샷에서 볼 수 있는 것처럼 일단 선택을 하기 위한 항목을 다시 처음대로 바꾸어 주도록 합니다.

 

 

일단 이렇게 해서 제대로 close의 값을 가지고 오는 것에는 성공할 수 있었습니다. 위 스크린샷의 박스친 부분을 보시면 그렇게 값이 나오는데, 문제는 어디서 또 에러가 발생하는 것 입니다.

또 다시 key에러인데, 이 에러가 나온 이유는 간단합니다. 아무것도 없는 데이터 프레임에서 값을 가지고 오라고 해서 생기는 에러 였습니다.

그래서 데이터 프레임이 빈 깡통으로 오면, 위 스크린샷의 내용처럼 그냥 return해 버려서 끝내라는 식으로 만들어 주도록 합니다.

일단 이렇게 하는 것으로 우선은 눈에 보이는 문제를 해결하는 데는 성공했습니다. 이제 남은 것은 제대로 이동평균선과 표준편차를 구할 수 있는가 없는가 하는 것 입니다.

 

이번에는 결과를 한번 보기 위해서, 위 스크린샷에서 볼 수 있는 것과 같이, 일단 평균과 표준편차를 표시할 수 있도록 만들어 주도록 합니다. 그런데 결과가 그렇게 좋지는 못했습니다. 어찌된 것인지 전혀 값이 나오지 않는 것 입니다.

그 원인을 알아보니, 위 스크린샷처럼 축적이 되어야 하는 곳에서 데이터의 축적이 전혀 일어나지 않고 있는 것이 아닌가 하는 생각이 들었습니다.

결국 마지막에 확인을 해 보니까, 전혀 데이터 베이스가 축적이 되지 않고, 들어온 데이터 대로 따로따로 놀고 있는 현장이 발견되었습니다. 이 문제역시 해결하기 위해서 적지 않은 시행착오가 들어갔는데, 다음 포스팅에서는 그 시행착오에 대해서 올리도록 하겠습니다.

+ Recent posts