단일 할당으로 Pandas DataFrame에 여러 열을 효율적으로 추가하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-10-25 13:06:02
원래의
957명이 탐색했습니다.

How to efficiently add multiple columns to a Pandas DataFrame in a single assignment?

단일 할당으로 Pandas DataFrames에 여러 열 추가

Pandas에서는 다양한 방법으로 여러 열을 동시에 추가할 수 있습니다. 한 가지 접근 방식은 각 열에 개별적으로 값을 할당하는 것이지만 여러 열에 대해서는 지루한 작업이 될 수 있습니다. 더 효율적인 방법은 한 단계로 열을 추가하는 것입니다.

얼핏 보면 열 목록 구문(예: df[['new1', 'new2)을 사용하여 여러 개의 새 열에 목록이나 배열을 할당하는 것 같습니다. ]] = [스칼라, 스칼라])는 직관적으로 보일 수 있습니다. 그러나 이 할당은 기존 열에만 적용됩니다.

한 번의 작업으로 새 열을 추가하고 값을 할당하려면 다음과 같은 여러 접근 방식을 사용할 수 있습니다.

1. 반복자 압축 풀기:

<code class="python">df['new1'], df['new2'], df['new3'] = np.nan, 'dogs', 3</code>
로그인 후 복사

이 접근 방식은 각 새 열에 반복적으로 값을 할당합니다.

2. DataFrame 확장:

<code class="python">df[['new1', 'new2', 'new3']] = pd.DataFrame([[np.nan, 'dogs', 3]], index=df.index)</code>
로그인 후 복사

이 방법은 원본 DataFrame의 인덱스와 일치하는 단일 행이 있는 DataFrame을 생성한 다음 Pandas의 concat 함수를 사용하여 새 열을 원본에 병합합니다.

3. 임시 DataFrame 조인:

<code class="python">df = pd.concat([df, pd.DataFrame([[np.nan, 'dogs', 3]], index=df.index, columns=['new1', 'new2', 'new3'])], axis=1)</code>
로그인 후 복사

이 접근 방식은 새 열과 값으로 임시 DataFrame을 생성한 다음 이를 원래 DataFrame과 조인합니다.

4. 사전 할당:

<code class="python">df = df.join(pd.DataFrame({'new1': np.nan, 'new2': 'dogs', 'new3': 3}, index=df.index))</code>
로그인 후 복사

이 방법은 사전을 사용하여 임시 DataFrame을 만든 다음 원래 DataFrame과 결합합니다.

5. .sign() 메서드:

<code class="python">df = df.assign(new1=np.nan, new2='dogs', new3=3)</code>
로그인 후 복사

.sign() 메서드를 사용하면 한 번에 여러 열을 할당할 수 있습니다.

6. 열 생성 및 값 할당:

<code class="python">new_cols = ['new1', 'new2', 'new3']
new_vals = [np.nan, 'dogs', 3]
df = df.reindex(columns=df.columns.tolist() + new_cols)
df[new_cols] = new_vals</code>
로그인 후 복사

이 기술은 빈 열을 생성하고 값을 별도로 할당합니다.

다중 개별 할당:

<code class="python">df['new1'] = np.nan
df['new2'] = 'dogs'
df['new3'] = 3</code>
로그인 후 복사

다른 방법만큼 효율적이지는 않지만 개별 할당은 간단하며 소수의 새 열에 사용할 수 있습니다.

최선의 선택은 특정 요구 사항과 성능 고려 사항에 따라 다릅니다. 여러 열을 동시에 추가하는 경우 DataFrame 확장 또는 임시 DataFrame 조인 접근 방식이 간결하고 효율적인 솔루션을 제공합니다.

위 내용은 단일 할당으로 Pandas DataFrame에 여러 열을 효율적으로 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!