>  기사  >  백엔드 개발  >  Pandas DataFrame에 여러 열을 동시에 추가하는 방법은 무엇입니까?

Pandas DataFrame에 여러 열을 동시에 추가하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-10-25 08:29:02691검색

How to Add Multiple Columns to a Pandas DataFrame Simultaneously?

Pandas Dataframes에 동시에 여러 열 추가: 단계별 가이드

데이터 분석 과정에서 추가 열을 사용하여 기존 Pandas 데이터프레임을 보강합니다. 이 프로세스를 단순화하기 위해 우리는 한 번에 여러 열을 추가하는 효율적인 접근 방식을 추구합니다.

초기 오해: 여러 열에 값 할당

직관적으로 다음과 같은 결과를 기대할 수 있습니다. 작업을 수행하기 위한 구문:

<code class="python">df[['column_new_1', 'column_new_2', 'column_new_3']] = [np.nan, 'dogs', 3]</code>

그러나 이 접근 방식은 열 목록 할당의 오른쪽에 대한 Pandas의 요구 사항(df[[new1, new2]] = .. .) DataFrame이 됩니다.

작업 솔루션: 여러 열 할당

우리는 목표를 달성하기 위해 주저하지 않고 다양한 기술을 탐색합니다.

1. 동시 할당을 위한 반복자 언패킹

<code class="python">df['column_new_1'], df['column_new_2'], df['column_new_3'] = np.nan, 'dogs', 3</code>

2. DataFrame()을 사용하여 단일 행 확장

<code class="python">df[['column_new_1', 'column_new_2', 'column_new_3']] = pd.DataFrame([[np.nan, 'dogs', 3]], index=df.index)</code>

3. 임시 DataFrame과 연결

<code class="python">df = pd.concat([ df, pd.DataFrame([[np.nan, 'dogs', 3]], index=df.index, columns=['column_new_1', 'column_new_2', 'column_new_3']) ], axis=1)</code>

4. 임시 DataFrame으로 참여

<code class="python">df = df.join(pd.DataFrame([[np.nan, 'dogs', 3]], index=df.index, columns=['column_new_1', 'column_new_2', 'column_new_3']))</code>

5. 사전 기반 임시 데이터 프레임

<code class="python">df = df.join(pd.DataFrame({'column_new_1': np.nan, 'column_new_2': 'dogs', 'column_new_3': 3}, index=df.index))</code>

6. 다중 열 인수의 경우 .sign()(Python 3.6 )

<code class="python">df = df.assign(column_new_1=np.nan, column_new_2='dogs', column_new_3=3)</code>

7. 컬럼 생성, 값 따로 지정

<code class="python">df['column_new_1'] = np.nan
df['column_new_2'] = 'dogs'
df['column_new_3'] = 3</code>

8. 별도의 할당

다른 솔루션의 우아함은 부족하지만 이 접근 방식은 여전히 ​​간단합니다.

<code class="python">df['column_new_1'] = np.nan
df['column_new_2'] = 'dogs'
df['column_new_3'] = 3</code>

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.