Python pandas에서 희소 데이터를 처리할 때 특정 셀에 목록을 삽입하는 것이 어려울 수 있습니다. df.ix[1,'B'] = abc와 같은 일반적인 방법을 사용하여 이러한 작업을 시도하면 키 길이 불일치로 인해 오류가 발생하는 경우가 많습니다.
목록을 추가 대괄호(예: df.ix[1,'B'] = [abc])로 묶거나 문자열 표현(예: df.ix[1,'B'] = ', '.join)을 사용하면 오류가 발생합니다. (abc))는 추가 요소를 도입하거나 의도한 데이터 구조를 변경하므로 만족스럽지 않습니다.
더 효과적인 접근 방식은 대신 df.at를 사용하는 것입니다. df.ix 또는 df.loc. df.at는 특히 단일 셀을 대상으로 하여 앞서 언급한 오류로 이어질 수 있는 모호성을 제거합니다.
<code class="python">import pandas as pd # Create a dataframe with mixed data types df = pd.DataFrame(data={'A': [1, 2, 3], 'B': ['x', 'y', 'z']}) # Insert a list into cell 1B df.at[1, 'B'] = ['m', 'n'] print(df)</code>
이 작업은 오류 없이 셀 1B에 ['m', 'n']을 성공적으로 삽입합니다.
목록을 삽입하려는 열의 dtype이 'object'로 설정되어 있어야 한다는 점에 유의하는 것이 중요합니다. 열에 'int64'와 같이 다른 dtype이 있으면 오류가 발생합니다. 이 문제를 해결하려면 삽입을 시도하기 전에 열의 dtype을 변환하면 됩니다.
<code class="python">df = pd.DataFrame(data={'A': [1, 2, 3], 'B': [1,2,3]}) df['B'] = df['B'].astype('object') # Now, list insertion will work as expected df.at[1, 'B'] = [1, 2, 3]</code>
위 내용은 Python에서 DataFrame 셀에 목록을 성공적으로 삽입하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!