데이터 스트림 저장하기
이제 MQTT 데이터 스트림에서 들어오는 각 새 데이터 포인트를 리스트 store에 추가해 보겠습니다.
paho.mqtt 라이브러리를 사용하면 subscribe.callback()으로 데이터 스트림을 구독할 수 있어요.
새 메시지가 도착할 때마다 우리가 정의한 함수가 한 번씩 호출되며, 이 함수에는 다음 인자가 필요합니다:
client: 이 콜백을 위한 클라이언트 인스턴스userdata: 인스턴스를 만들 때 설정한 사용자 데이터message:MQTTMessage인스턴스. 이 연습에서는payload속성만 사용합니다.
json.loads()로 데이터를 JSON 문자열로 파싱한 뒤 리스트 store에 추가하세요.
그다음 이를 DataFrame으로 변환하고, DataFrame을 CSV 파일로 저장합니다.
json, pandas는 pd로, MQTT_HOST와 topic은 세션에서 사용할 수 있습니다.
이 연습은 강의의 일부입니다
Python으로 IoT 데이터 분석하기
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Define function to call by callback method
def ____(____):
# Parse the message.payload
data = ____
store.append(data)