728x90

python 24

파이썬에서 f-string에서 줄바꿈 시 앞 공백 제거 방법

f-string을 이용하면 두 줄 이상의 문자열을 처리할 때 매우 편합니다. 이때 발생할 수 있는 문제가 한가지가 있습니다. 아래와 같이 indent를 맞추면 화면에 출력 시 알파벳 앞의 공백이 함께 인식이 되버립니다. def func(): str = f""" abc def """ 이럴 땐 조금 불편하지만 아래와 같은 방법을 사용하면 됩니다. def func(): str = ( f'abc' f'def' )

파이썬(Python) 2022.11.07

python의dataclass

정의 이 모듈은 __init__() 나 __repr__() 과 같은 생성된 특수 메서드 를 사용자 정의 클래스에 자동으로 추가하는 데코레이터와 함수를 제공합니다. 원래 PEP 557 에 설명되어 있습니다. 파이썬 3.7부터 적용됐습니다. dataclass는 데이터를 처리하는 클래스의 보일러 플레이트 코드를 없애주는 역할을 한다. 클래스를 이용해서 데이터를 담으면 type-safe해져서 프로그램 실행 중에 오류가 발생할 확률이 적어진다는 장점이 있습니다. @dataclass(frozen=True)와 같이 frozen을 이용하면 불변 데이터를 만들 수 있습니다. 참고 https://docs.python.org/ko/3/library/dataclasses.html https://www.daleseo.com/p..

파이썬(Python) 2021.10.22

[파이썬으로 살펴보는 아키텍처 패턴] 00. 도입

이 글은 "파이썬으로 살펴보는 아키텍처 패턴" 책을 보며 정리한 내용입니다. 자세한 내용은 책을 통해서 확인 가능합니다. 파이썬으로 살펴보는 아키텍처 패턴: TDD, DDD, EDM 적용하기 - 교보문고 고수준 아키텍처 패턴을 적절한 위치에서 활용하는 능력을 키워보자 이 책은 파이썬을 활용한 실전 예제를 통해 도메인 주도 개발을 설명한다. 설명하는 과정에서 이론이나 실무에 지나치게 치 www.kyobobook.co.kr 0.1 설계가 왜 잘못되는가? 소프트웨어 시스템도 혼돈 상태로 향하려는 경향이 있다. 시스템을 처음구축할 때는 코드를 깔끔하게 질서 잡힌 상태로 유지하기 위해 원대한 계획을 세운다. 하지만 시간이 지남에 따라 잘못 구현한 부분이라 에지 케이스(잘 일어나지 않는 드문 경우)를 처리하기 위한..

파이썬(Python) 2021.10.21

toPandas() 후 조회 시 index 2 is out of bounds for axis 0 with size 에러가 발생할 때

spark dataframe 또는 koalas를 이용해서 DF를 만들고 toPandas()를 이용해서 pandas DF로 변환해야하는 경우가 있다. 필자 같은 경우 DF로 heatmap을 만드는데 koalas DF에서 만들면 에러가 발생해서 pandas df로 변환했다. 문제는 변환 후 조회하면 "index 2 is out of bounds for axis 0 with size" 와 같은 에러가 발생했다. 구체적으로 DF에 NaN 값이 있었고, df.fillna(0)으로 NaN을 0값으로 변환한 경우에 에러가 발생했다. 이경우 toPandas() 코드 윗 부분에 아래와 같은 코드를 추가하면 된다. 파라미터를 -1로 하면 동일한 에러가 발생하는 것을 확인할 수 있다. pd.set_option('displa..

Koalas에서 Cannot combine the series or dataframe because it comes from a different dataframe 에러 발생 시

pyspark에서 koalas를 이용해서 DataFrame을 사용하는 작업에서 아래와 같은 에러를 만날 수 있다. Cannot combine the series or dataframe because it comes from a different dataframe. In order to allow this operation, enable 'compute.ops_on_diff_frames' option. 이 경우 에러 메시지에도 나와있는 옵션을 아래와 같이 추가하면 된다. from databricks.koalas.config import set_option, reset_option set_option("compute.ops_on_diff_frames", True) kdf['C'] = kser # Reset ..

python에서 pandas dataframe에서 컬럼의 text가 모두 안보이는 경우

컬럼 값이 길경우 ....으로 줄여서 나오는 경우가 있다. 이 때는 아래와 같은 옵션을 데이터 조회 전에 실행하면 된다. 두 번째 파라미터의 -1은 노출할 텍스트 수의 제한이 없음을 의미한다. pd.set_option('display.max_colwidth', -1) 참고 stackoverflow.com/questions/25351968/how-to-display-full-non-truncated-dataframe-information-in-html-when-convertin How to display full (non-truncated) dataframe information in html when converting from pandas dataframe to html? I converted a pa..

Python의 DataFrame에서 모든 column이 나오게 하는 방법

판다스로 만든 컬럼이 많은 데이터프레임을 조회하면 모든 컬럼이 나오지 않는 경우가 있다. 이때는 아래와 같은 옵션을 데이터 조회 전에 실행하면 모든 컬럼을 볼 수 있다. 단 컬럼이 너무 많은 경우에는 에러가 발생한다. 두 번째 파라미터가 노출 컬럼 수이고, -1은 제한없이 보여준다는 의미다. pd.set_option('display.max_columns', -1) 참고 towardsdatascience.com/how-to-show-all-columns-rows-of-a-pandas-dataframe-c49d4507fcf

728x90