[python] 상수 값으로 데이터 프레임에 열 추가

모든 행에 동일한 값을 포함 할 추가 열을 추가 해야하는 기존 데이터 프레임이 있습니다.

기존 df :

Date, Open, High, Low, Close
01-01-2015, 565, 600, 400, 450

새로운 df :

Name, Date, Open, High, Low, Close
abc, 01-01-2015, 565, 600, 400, 450

기존 시리즈 / 데이터 프레임 열을 추가하는 방법을 알고 있습니다. 그러나 이것은 ‘상황’열을 추가하고 모든 행을 동일한 값으로 설정하는 것이므로이 상황은 다릅니다.이 경우 ‘abc’입니다.



답변

df['Name']='abc' 새 열을 추가하고 모든 행을 해당 값으로 설정합니다.

In [79]:

df
Out[79]:
         Date, Open, High,  Low,  Close
0  01-01-2015,  565,  600,  400,    450
In [80]:

df['Name'] = 'abc'
df
Out[80]:
         Date, Open, High,  Low,  Close Name
0  01-01-2015,  565,  600,  400,    450  abc


답변

insert새 열 위치를 지정 하는 데 사용할 수 있습니다 . 이 경우 0새 열을 왼쪽에 배치하는 데 사용 합니다.

df.insert(0, 'Name', 'abc')

  Name        Date  Open  High  Low  Close
0  abc  01-01-2015   565   600  400    450


답변

단일 라이너 작동

df['Name'] = 'abc'

작성 Name열 및 행에 대한 모든 설정 abc


답변

다른 사람들이 제안한 것을 요약하고 세 번째 방법 추가

당신은 할 수 있습니다 :

  • assign (** kwargs) :

    df.assign(Name='abc')
  • 새 컬럼 시리즈에 액세스하여 작성됩니다.

    df['Name'] = 'abc'
  • 삽입 (위치, 열, 값, allow_duplicates = False)

    df.insert(0, 'Name', 'abc')

    인수 loc (0 <= loc <= len (columns))을 사용하면 원하는 열을 삽입 할 수 있습니다.

    ‘loc’은 삽입 후 열 이있을 인덱스를 제공합니다 . 예를 들어, 위의 코드는 Name 열을 0 번째 열로 삽입합니다. 즉 , 첫 번째 열 앞에 삽입 되어 새 첫 번째 열이됩니다. (인덱싱은 0부터 시작합니다).

이 모든 방법을 사용하면 시리즈에서 새 열을 추가 할 수도 있습니다 (위의 ‘abc’기본 인수를 시리즈로 대체하십시오).


답변