파이썬 pandas 특정 셀에 값 넣기

조회수 3719회

안녕하세요.

pandas를 쓰다가 모르는 부분이 있어 질문드립니다.

특정 열에서는 첫행만 데이터가 입력되고 나머지는 비어 있었으면 좋겠는데 어떻게 해야할지 막막하네요.

검색을 해보니 가능한 것 같아서 'pd_data.loc'를 따라서 써보았는데 AttributeError: 'dict' object has no attribute 'loc'이란 오류가 나네요.. 어떤 것을 써야 가능한지 모르겠습니다.

pandas 처리 부분은 아래와 같습니다. 컬럼만 만들어주기 위해서 벨류에 ' '를 넣었습니다.

pd_data = ({'ID':usr_id, 'Name':usr_name, 'Sex':usr_sex,
            'Address':usr_adr, 'Phone':PH_num, 'Column1':'', 'Column2':'',
            'Column3':'', 'Column4':''})
external_pd = pd.DataFrame(pd_data)

pd_data.loc[1][6] = value_a
pd_data.loc[1][7] = value_b
pd_data.loc[1][8] = value_c
pd_data.loc[1][9] = value_d

external.to_csv('result.csv', encoding='utf-8-sig')

Column1 열에는 Value_a라는 변수의 값을 넣고, Column2 열에는 Value_b라는 변수의 값을 넣고 이런 식입니다.

앞 컬럼들은 차곡차곡 데이터가 들어가고, Column1 ~ Column4 까지는 첫 행에만 데이터가 들어가고 나머지는 비어있게 하고 싶습니다.

고수님들 저에게 지식을 나눠주세요.. 부탁드립니다.

이해를 돕기 위해 이미지를 첨부했습니다. 최종적으로 원하는 테이블은 아래와 같습니다.

이미지 : https://res.cloudinary.com/eightcruz/image/upload/v1599219793/bm8xml5fmkump4w8lqak.png

이미지가 게시물에 안 떠서 해당 링크 복사하여 넣는 점, 양해 부탁드립니다.

이미지

  • 일단은 데이터를 리스트형 변수에 옮겨담고 행의 길이만큼(id 혹은 name의 길이) append로 빈 값을 넣어 임시로 해결했습니다.. 더 나은 방법이 떠오르지 않네요. 답변이 달렸으면 좋겠네요..ㅜ 정용환 2020.9.6 18:41

1 답변

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)