판다스 데이터프레임에 열 추가하는 5가지 방법

Try Proseoai — it's free
AI SEO Assistant
SEO Link Building
SEO Writing

판다스 데이터프레임에 열 추가하는 5가지 방법

표목차

  1. 데이터 프레임에 새로운 열 추가하기
  2. 데이터 프레임에 스칼라 값으로 열 추가하기
  3. 데이터 프레임에 리스트 값으로 열 추가하기
  4. 데이터 프레임에 열 삽입하기
  5. 데이터 프레임에 여러 열 동시에 추가하기
  6. 데이터 프레임에 사전 값으로 열 추가하기
  7. 데이터 프레임에 loc 메서드를 사용하여 열 추가하기

📝 데이터 프레임에 새로운 열 추가하기

데이터 작업을 할 때 데이터 프레임에 새로운 열을 추가하는 일이 자주 발생합니다. 이는 원본 데이터 프레임에서 파생된 열을 추가하거나 새로운 데이터를 추가하는 경우입니다. 어쨌든 계속해서 데이터를 추가하거나 업데이트해야 할 것입니다. 이제 데이터 프레임에 새로운 열을 추가하는 방법을 보여드리겠습니다.

🔸 데이터 프레임에 스칼라 값으로 열 추가하기

먼저 pandas를 가져온 다음 데이터 프레임을 생성합니다. 이 데이터 프레임은 샌프란시스코의 레스토랑 목록입니다. 레스토랑 이름, 종류, 평균 요금의 열이 있습니다. 첫 번째로 해야 할 일은 레스토랑이 방문된 요일을 나타내는 새로운 열을 만드는 것입니다. 새로운 열 이름을 데이터 프레임에 전달하고 값을 스칼라 형태로 설정할 수 있습니다. 이를 통해 새로운 열을 추가하고 값을 할당할 수 있습니다.

import pandas as pd

df = pd.DataFrame({
    'name': ['레스토랑1', '레스토랑2', '레스토랑3'],
    'type': ['한식', '일식', '양식'],
    'average_bill': [10000, 15000, 20000]
})

df['day'] = '월요일'

이제 실행해보면 새로운 'day' 열이 추가되었고 해당 열의 모든 항목이 '월요일'로 설정된 것을 볼 수 있습니다.

🔸 데이터 프레임에 리스트 값으로 열 추가하기

리스트 값을 전달하여 열을 추가할 수도 있습니다. 이번에는 'day' 열을 덮어쓰고 리스트 값을 전달해보겠습니다. 리스트의 길이가 데이터 프레임과 일치해야 함에 주의해야 합니다.

df['day'] = ['월요일', '화요일', '수요일']

위와 같이 코드를 실행하면 'day' 열의 값이 '월요일', '화요일', '수요일'로 순서대로 추가됩니다.

📝 Article

데이터를 처리하다보면 종종 데이터 프레임에 열을 추가해야 하는 일이 발생합니다. 이는 원래의 데이터 프레임에 파생 열을 추가하거나 새로운 데이터를 추가하는 경우일 수 있습니다. 이러한 상황에서는 데이터 프레임에 새로운 열을 추가하거나 업데이트하는 방법을 알고 있어야 합니다. 이번 섹션에서는 이에 대한 다섯 가지 방법을 소개하고자 합니다.

🔹 1. 데이터 프레임에 스칼라 값으로 열 추가하기

가장 간단한 방법은 먼저 새로운 열 이름을 데이터 프레임에 전달하고, 해당 열에 스칼라 값을 할당하는 것입니다. 예를 들어, 새로운 열 'day'를 만들고 값을 '월요일'로 설정하기 위해 다음과 같이 코드를 작성합니다.

import pandas as pd

df = pd.DataFrame({
    'name': ['레스토랑1', '레스토랑2', '레스토랑3'],
    'type': ['한식', '일식', '양식'],
    'average_bill': [10000, 15000, 20000]
})

df['day'] = '월요일'

위의 코드를 실행하면 'day'라는 새로운 열이 추가되고, 모든 항목이 '월요일'로 설정되는 것을 확인할 수 있습니다.

🔹 2. 데이터 프레임에 리스트 값으로 열 추가하기

리스트 값을 전달하여 열을 추가하는 것도 가능합니다. 이 경우 'day' 열을 덮어쓰고 리스트 값을 전달하여 열을 추가할 수 있습니다. 다만, 리스트의 길이가 데이터 프레임과 일치해야 합니다. 다음과 같은 코드를 사용해보세요.

df['day'] = ['월요일', '화요일', '수요일']

위의 코드를 실행하면 'day'라는 열의 값이 '월요일', '화요일', '수요일'로 순서대로 추가됩니다.

🔹 3. 데이터 프레임에 열 삽입하기

'df.insert()' 메서드를 사용하여 열을 삽입하는 것도 가능합니다. 이 메서드를 사용하면 열이 추가될 위치를 지정할 수 있습니다. 예를 들어, 'name'과 'type' 사이에 새로운 열을 삽입해보겠습니다. 다음과 같은 코드를 사용할 수 있습니다.

df.insert(loc=1, column='stars', value=[4, 5, 3])

위의 코드를 실행하면 'stars'라는 새로운 열이 'name'과 'type' 사이에 삽입되며, 해당 열의 값은 [4, 5, 3]으로 설정됩니다.

🔹 4. 데이터 프레임에 여러 열 동시에 추가하기

'df.assign()' 메서드를 사용하면 여러 개의 열을 한 번에 추가할 수도 있습니다. 다음은 열 목록을 전달하여 'average_half_bill'이라는 새로운 열을 추가하는 예시입니다.

df.assign(average_half_bill=lambda x: x['average_bill'] / 2)

위의 코드를 실행하면 'average_half_bill'이라는 새로운 열이 추가되며, 해당 열의 값은 'average_bill' 값을 2로 나눈 값으로 설정됩니다.

🔹 5. 데이터 프레임에 사전 값으로 열 추가하기

딕셔너리를 사용하여 열을 추가하는 것도 가능합니다. 예를 들어, 'month'라는 새로운 열을 추가하고 해당 열의 값으로 'january', 'february', 'april', 'december'를 사전 형태로 전달해보겠습니다.

df = df.assign(month={'레스토랑1': 'january', '레스토랑2': 'february', '레스토랑3': 'april'})

위의 코드를 실행하면 'month'라는 새로운 열이 추가되며, 해당 열의 값은 {'레스토랑1': 'january', '레스토랑2': 'february', '레스토랑3': 'april'}로 설정됩니다.

🔹 6. 데이터 프레임에 loc 메서드를 사용하여 열 추가하기

마지막으로 loc 메서드를 사용하여 열을 추가하는 방법도 있습니다. loc 메서드는 기본적으로 데이터 프레임 내에서 값을 참조하기 위해 사용되지만 아래와 같이 값을 할당하기 위해 사용할 수도 있습니다. 다만, 이 방법은 권장되는 방법은 아닙니다. 이 방법은 참조값이 아닌 전혀 새로운 열을 생성하기 때문입니다.

df.loc[:, 'year'] = [2020, 2021, 2022]

위의 코드를 실행하면 'year'이라는 열이 추가되고, 값으로 [2020, 2021, 2022]가 할당됩니다.

장점:

  • 데이터 프레임에 열을 추가하는 다양한 방법을 알고 있으므로 상황에 맞게 선택할 수 있습니다.
  • 각 방법에 대한 예시와 함께 설명되어 있어 초보자에게도 쉽게 이해할 수 있습니다.
  • 코드 예시와 함께 제공되므로 실제로 시도해볼 수 있습니다.

단점:

  • loc 메서드를 사용하여 열을 추가하는 방법은 권장되지 않는 방법이므로 가능한 다른 방법을 사용하는 것이 좋습니다.

이렇게 다양한 방법으로 pandas 데이터 프레임에 열을 추가하거나 삽입할 수 있습니다. 상황과 요구사항에 맞게 적절한 방법을 선택하여 사용하면 데이터 분석 작업이 더욱 더 효율적으로 수행될 것입니다.

💡 하이라이트

  • 데이터 프레임에 새로운 열을 추가하는 다섯 가지 방법을 소개했습니다.
  • 스칼라 값이나 리스트 값을 사용하여 열을 추가할 수 있으며, 위치를 지정하여 삽입할 수도 있습니다.
  • 여러 개의 열을 동시에 추가하거나 사전 형태의 값으로 열을 추가하는 방법도 있습니다.
  • loc 메서드를 사용하여 열을 추가하는 방법은 권장되지 않지만 가능합니다.

📙 자주 묻는 질문

  1. Q: 데이터 프레임에 열을 추가하는 것과 assign 메서드를 사용하는 것의 차이는 무엇인가요?

    • assign 메서드는 한 번에 여러 개의 열을 추가할 수 있는 반면, 단순히 열을 추가하는 경우에는 데이터 프레임에 열을 직접 할당하는 것이 더 간단합니다.
  2. Q: 열을 추가할 때 loc 메서드를 사용하는 것은 권장되지 않는 이유는 무엇인가요?

    • loc 메서드는 주로 데이터 프레임에서 값을 참조할 때 사용되어야 합니다. 값을 설정하는 데에는 적합하지 않으며, 열을 추가하기 위해 다른 방법을 사용하는 것이 더 명확하고 권장되는 방법입니다.
  3. Q: 데이터 프레임에 새로운 열을 추가할 때 값을 조건에 따라 계산하려면 어떻게 해야 하나요?

    • assign 메서드를 사용하여 람다 함수를 통해 값을 조건에 따라 계산할 수 있습니다.

🌐 참고 자료

Are you spending too much time on seo writing?

SEO Course
1M+
SEO Link Building
5M+
SEO Writing
800K+
WHY YOU SHOULD CHOOSE Proseoai

Proseoai has the world's largest selection of seo courses for you to learn. Each seo course has tons of seo writing for you to choose from, so you can choose Proseoai for your seo work!

Browse More Content