Python45 [Streamlit]_쉽고 예쁘게 웹을 꾸밀 수 있다고!? - 데이터 표현하기 Streamlit 포스팅은 BOOKK에서 발간한 "Streamlit으로 프로젝트 한방에 끝내기 with 파이썬"이라는 책을 참고하여 저의 공부 내용을 올립니다. 저자님께 감사드립니다. 또한 streamlit doc의 코드도 일부 변형하였습니다. 감사합니다, Streamlit! Data elements st.dataframe data 매개변수에 입력할 수 있는 것은 Pandas, PyArrow, Snowpark, PySpark의 데이터프레임에서 실행합니다. 그리고 numpy array, list, set, dictionary와 같이 데이터프레임으로 변환할 수 있는 다른 여러 유형 또한 표현할 수 있습니다. 30개의 행과 10개의 열을 가진 데이터프레임을 만들겠습니다. import streamlit as s.. 2023. 8. 13. [Streamlit]_쉽고 예쁘게 웹을 꾸밀 수 있다고!? - 제목과 글 작성하기 Streamlit 포스팅은 BOOKK에서 발간한 "Streamlit으로 프로젝트 한방에 끝내기 with 파이썬"이라는 책을 참고하여 저의 공부 내용을 올리려고 합니다. 저자님께 감사드립니다. 저는 streamlit에 가입하고 github에 연동까지 한 상태입니다. 이 내용은 가입할 때 알아서 안내해줍니다. ㅎㅎ https://streamlit.io/ Streamlit • A faster way to build and share data apps Streamlit is an open-source app framework for Machine Learning and Data Science teams. Create beautiful web apps in minutes. streamlit.io 라이브러리 설치 .. 2023. 8. 12. [Crawling]_Selenium 설치 확인하기 우리의 친구, ChatGPT에게 물어봤습니다. 셀레늄은 다양한 프로그래밍 언어 (예: 자바, 파이썬, C# 등)를 지원하며, 브라우저를 직접 제어하여 사용자의 행동과 동일한 동작을 수행하게끔 만들어줍니다. 웹 페이지를 열거나 닫고, 버튼을 클릭하거나 텍스트를 입력하는 등의 작업을 자동화하여 테스트 케이스를 실행하거나 웹 데이터를 추출하는 데 사용됩니다. 크롤링을 하기 앞서 Selenium이 잘 작동하는지 확인하겠습니다. Selenium 설치하기 작업 폴더에서 VS code를 실행하고 가상 환경으로 접속합니다. source venv/Scripts/activate Selenium을 설치합니다. pip install selenium pip install webdriver-manager # 매번 업데이트 되는 .. 2023. 8. 10. [Pandas]_Pandas library basic (4) 날짜 데이터 / shift 두 날짜의 차이점은 뭘까? 다음 두 코드를 비교해봅시다. 왼쪽 코드는 날짜가 str타입으로, 오른쪽 코드는 날짜가 list타입으로 입력되어 있습니다. 그리고나서 datetime으로 바꾸어보니 타입이 각각 timestamps, datetimeindex로 다르네요. 시계열 자료는 인덱스가 날짜나 시간인 데이터입니다. pandas에서 시계열 자료를 이용하기 위해서는 datetimeindex여야 합니다. 다음과 같은 데이터를 준비합니다. 'datesold'의 데이터타입이 object로 나와있습니다. 이것을 datetime으로 바꾸겠습니다. sales['datesold']=pd.to_datetime(sales['datesold'] sales.info() 각각의 연도, 월, 일을 추출하여 새로운 컬럼으로 만들어봅시.. 2023. 8. 9. [Pandas]_Pandas library basic (3) 결측치를 어떻게 처리할까? 데이터 전처리 결측치 다루기 결측치는 영어로 missing value라고 합니다. 값이 없는 것이죠. null이라고 표현하기도 하고 NA, NAN이라고 하기도 합니다. 데이터 만들기 import pandas as pd import numpy as np np.random.seed(0) # 무작위로 숫자 추출하는데 첫 결과 고정. 실험조건을 동일하게 맞춰주기 위함 data = np.random.randint(0, 10, size=(10, 3)).astype(float) data 결측치 만들기 - 값이 3이하인 것은 nan 처리 하겠습니다. data[data < 3] = np.nan data data를 데이터프레임으로 바꾸겠습니다. 이때 컬럼명은 col1, col2, col3로 설정하겠습니다. 그리고 습관적으로 .info(.. 2023. 8. 9. [Pandas]_Pandas library basic (2) loc & iloc 의 차이는? loc와 iloc 위 두 문법은 기본적으로 Pandas에서 특정 행이나 열을 추출할 때 사용합니다. 1. loc location의 약자입니다. Pandas Docs에는 'Access a group of rows and columns by label(s) or a boolean array.'라고 되어 있습니다. 다시 말하면, 레이블 값으로 데이터프레임의 행이나 칼럼을 고를 수 있다는 것입니다. 우선 데이터를 불러옵니다. df_boston.head(1) 두 가지 방법이 있지만 두 번째 방법이 확장성측면(다른 열을 추가적으로 가져올 때 등)에서 더 편리합니다. # 첫 번째 방법 result = df_boston.loc[:3, 'CRIM' : 'INDUS'] result # 두 번째 방법 result = df_.. 2023. 8. 9. [Pandas]_Pandas library basic (1) I/O, 행과 열 추출 파일 입출력 하기 현재 경로 확인하기 import os os.getcwd() # 파일 현재 경로 파일 만들고 저장하기 import pandas as pd sample_df = pd.DataFrame({"col1" : [1, 2], "col2" : [3, 4]}) sample_df sample_df.to_csv("output/sample/test1.csv", index=False) 위의 마지막 줄에서 저장하고 싶은 경로로 선택하여 파일을 저장할 수 있습니다. 설정안하면 현재 경로에 파일이 생성됩니다. sample_df.to_csv("저장 경로/test1.csv", index=False) 파일 불러오기 data = pd.read_csv('./output/sample/test1.csv') print(data).. 2023. 8. 9. [Crawling]_API를 이용하여 웹에서 정보 가져오기 API??????? API는 Application Programming Interface의 줄임말입니다. 프로그램들이 서로 상호작용하는 것을 도와주는 매개체 역할을 합니다. 기상청의 소프트웨어 시스템에서는 일일 기상 데이터가 들어 있습니다. 휴대폰의 날씨 앱은 API를 통해 이 시스템과 '대화'하여 휴대폰에 매일 최신 날씨 정보를 표시합니다.(이 예시는 https://aws.amazon.com/ko/what-is/api/에서 가져왔습니다.) API 방식으로 데이터 수집하기 API방식으로 데이터 수집하는 과정은 우리는 서울열린데이터센터, 공공데이터 포털을 이용할 것입니다. 데이터 수집 전 가장 먼저 할 일은 각 데이터마다 존재하는 '공식 문서'를 보는 것입니다. 공식문서 안에는 API의 응답방식(xml, .. 2023. 8. 7. [Crawling]_뉴스 타이틀만 가져올 수 있을까? 라이브러리 가져오기 / html 가져오기 ch02.py 파일을 만든 후 다음을 입력하여 라이브러리를 가져옵니다. import requests from bs4 import BeautifulSoup requests는 사람 편의를 생각하여 http요청을 하는 라이브러리입니다. 우선 naver.com으로 해보겠습니다. 먼저 상태코드를 확인합니다. url1= "https://www.naver.com" # 요청 url 변수에 담긴 url의 html 문서를 출력한다. req = requests.get(url1) print(req.status_code) '상태코드 200' 은 서버가 요청을 제대로 처리했다는 의미입니다. 그럼 계속 이어서 하겠습니다. 다음 코드는 웹 페이지의 html을 모두 불러오는 것입니다. 이는 우.. 2023. 8. 6. [BeautifulSoup]_'아름다운 스프' 아니고 data를 가져오는 것? - find() BeautifulSoup 관련 내용은 다음 Documentation을 참고하였습니다. https://www.crummy.com/software/BeautifulSoup/bs4/doc/ Beautiful Soup Documentation — Beautiful Soup 4.12.0 documentation Beautiful Soup Documentation Beautiful Soup is a Python library for pulling data out of HTML and XML files. It works with your favorite parser to provide idiomatic ways of navigating, searching, and modifying the parse tree. It .. 2023. 8. 6. 이전 1 2 3 4 5 다음 반응형