본문 바로가기

전체 글980

Python 열 이름에 따라 판다스 데이터프레임의 열을 정렬하는 방법 [중복], Sorting columns in pandas dataframe based on column name [duplicate] 질문 나는 dataframe을 가지고 있습니다. 이 dataframe은 200개 이상의 열을 가지고 있습니다. 이슈는 생성된 순서입니다. ['Q1.3','Q6.1','Q1.2','Q1.1',......] 다음과 같이 열을 정렬해야 합니다: ['Q1.1','Q1.2','Q1.3',.....'Q6.1',......] Python 내에서 이를 수행할 수 있는 방법이 있을까요? 답변 df = df.reindex(sorted(df.columns), axis=1) 이는 열 이름을 정렬하면 원하는 순서를 얻을 것으로 가정합니다. 열 이름이 사전식으로 정렬되지 않는 경우 (예 : 열 Q10.3이 Q9.1 다음에 나타나길 원하는 경우) 다른 방식으로 정렬해야하지만, 이는 판다스와는 무관합니다. 2023. 10. 25.
Python 파이썬에서 현재 CPU 및 RAM 사용량을 어떻게 얻을 수 있나요?, How to get current CPU and RAM usage in Python? 질문 파이썬에서 현재 시스템 상태(현재 CPU, RAM, 여유 디스크 공간 등)를 어떻게 얻을 수 있을까요? 이상적으로는 Unix와 Windows 플랫폼 모두에서 작동해야 합니다. 검색 결과, 몇 가지 가능한 추출 방법이 있는 것 같습니다: PSI와 같은 라이브러리를 사용하는 방법(현재 개발이 활발하지 않고 여러 플랫폼을 지원하지 않는 것 같습니다)이나 pystatgrab과 같은 것을 사용하는 방법(2007년 이후로 활동이 없고 Windows를 지원하지 않는 것 같습니다). 플랫폼별 코드를 사용하는 방법으로, *nix 시스템에서는 os.popen("ps")와 같은 방법을 사용하고 Windows 플랫폼에서는 ctypes.windll.kernel32의 MEMORYSTATUS를 사용하는 방법(ActiveSta.. 2023. 10. 25.
Python "TypeError: method()는 1개의 위치 인수를 필요로 하지만 2개가 제공되었습니다" 하지만 저는 하나만 전달했습니다., "TypeError: method() takes 1 positional argument but 2 were given" but I only passed one 질문 만약 내가 클래스를 가지고 있다면... class MyClass: def method(arg): print(arg) ... 나는 객체를 생성하기 위해 사용하는데... my_object = MyClass() ... 내가 method("foo")를 호출하는데... >>> my_object.method("foo") Traceback (most recent call last): File "", line 1, in TypeError: method() takes exactly 1 positional argument (2 given) ... Python이 나에게 두 개의 인자를 주었다고 말하는 이유는 무엇인가요? 하나만 주었는데요? 답변 파이썬에서는 다음과 같습니다: my_object.method("foo") .. 2023. 10. 25.
Python 메모이제이션은 무엇이며, 파이썬에서 어떻게 사용할 수 있을까요?, What is memoization and how can I use it in Python? 질문 저는 방금 Python을 시작했고 memoization이 무엇이며 어떻게 사용하는지 전혀 모르겠습니다. 또한, 간단한 예제를 볼 수 있을까요? 답변 메모이제이션은 메소드 호출의 결과를 메소드의 입력에 기반하여 기억하고, 결과를 다시 계산하는 대신 기억된 결과를 반환하는 것을 효과적으로 의미합니다. 이것을 메소드 결과의 캐시로 생각할 수 있습니다. 자세한 내용은 Introduction To Algorithms (3e), Cormen et al.의 387페이지를 참조하십시오. 파이썬에서 메모이제이션을 사용하여 팩토리얼을 계산하는 간단한 예제는 다음과 같습니다: factorial_memo = {} def factorial(k): if k < 2: return 1 if k not in factorial_m.. 2023. 10. 24.
Python 플라스크에서 POST된 JSON을 어떻게 받을 수 있나요?, How to get POSTed JSON in Flask? 질문 간단한 Flask API를 구축하려고 합니다. 이 API에서는 POST된 JSON을 읽고 싶습니다. POST는 Postman Chrome 확장 프로그램을 사용하여 수행하며, POST된 JSON은 단순히 {"text":"lalala"}입니다. 다음 방법을 사용하여 JSON을 읽으려고 합니다: @app.route('/api/add_message/', methods=['GET', 'POST']) def add_message(uuid): content = request.json print content return uuid 브라우저에서는 올바르게 GET에 입력한 UUID를 반환하지만 콘솔에서는 None만 출력됩니다. (예상대로 {"text":"lalala"}를 출력해야 합니다). Flask 메소드 내에서 .. 2023. 10. 24.
Python 가상환경 안에서 파이썬이 실행 중인지 확인하세요., Determine if Python is running inside virtualenv 질문 현재 스크립트가 가상 환경 내에서 실행되고 있는지 확인할 수 있을까요? 답변 신뢰할 수 있고 문서화된 방법은 sys.prefix와 sys.base_prefix를 비교하는 것입니다. 동일하다면 가상 환경이 아니고, 그렇지 않다면 가상 환경입니다. 가상 환경 안에서 sys.prefix는 가상 환경의 디렉토리를 가리키고, sys.base_prefix는 환경을 생성한 Python 인터프리터를 가리킵니다. 이는 venv의 작동 방식에 문서화되어 있습니다: 현재 인터프리터가 가상 환경에서 실행 중인지 확인하려면 sys.prefix != sys.base_prefix를 확인하는 것만으로 충분합니다. 이 방법은 Python 표준 라이브러리인 venv와 virtualenv (버전 20부터)에서 작동합니다: def i.. 2023. 10. 24.
Python 문자열.replace에 정규식을 입력하는 방법은 무엇인가요?, How to input a regex in string.replace? 질문 정규식 선언에 도움이 필요합니다. 입력은 다음과 같습니다: this is a paragraph with in between and then there are cases ... where the number ranges from 1-100. and there are many other lines in the txt files with such tags 필요한 출력은 다음과 같습니다: this is a paragraph with in between and then there are cases ... where the number ranges from 1-100. and there are many other lines in the txt files with such tags 다음을 시도해 보았습니다: #.. 2023. 10. 24.
Python "RuntimeError: dictionary changed size during iteration" 오류를 피하는 방법은 무엇인가요?, How can I avoid "RuntimeError: dictionary changed size during iteration" error? 질문 어떤 리스트의 사전이 있다고 가정해봅시다: d = {'a': [1], 'b': [1, 2], 'c': [], 'd':[]} 이제 값이 빈 리스트인 키-값 쌍을 제거하고 싶습니다. 다음 코드를 시도해봤습니다: for i in d: if not d[i]: d.pop(i) 하지만 이렇게 하면 오류가 발생합니다: RuntimeError: dictionary changed size during iteration 사전을 반복하는 동안에는 항목을 추가하거나 제거할 수 없다는 것을 이해합니다. 이 문제를 해결하기 위해 이 제한을 어떻게 우회할 수 있을까요? 이로 인해 문제가 발생할 수 있고 그 이유에 대한 인용은 Modifying a Python dict while iterating over it에서 확인할 수 .. 2023. 10. 24.