Python에서는 각 항목이 Numpy 배열을 보유하는 사전에서 DataFrame을 생성할 수 있습니다. 그러나 배열 길이가 항목마다 다를 때 문제가 발생합니다. 기본적으로 Pandas에는 균일한 길이의 배열이 필요하므로 "ValueError: 배열은 모두 동일한 길이여야 합니다."와 같은 오류가 발생합니다.
길이 불일치 극복
이 문제에서는 Pandas의 기능을 활용하여 NaN(Not-a-Number) 값을 누락된 데이터에 대한 자리 표시자로 사용할 수 있습니다. 이를 활용하여 다양한 길이의 열로 구성된 DataFrame을 효과적으로 생성할 수 있습니다.
이를 달성하기 위해 각 사전 항목을 누락된 값을 원활하게 처리할 수 있는 1차원 배열인 Pandas 시리즈로 변환할 수 있습니다. 사전 항목을 생성기 표현식으로 래핑하고 Series 생성자를 사용하여 Series 객체의 사전을 생성할 수 있습니다.
import pandas as pd import numpy as np # Sample data with uneven array lengths data = { 'A': np.random.randn(5), 'B': np.random.randn(8), 'C': np.random.randn(4) } # Convert dictionary items to Series series_dict = dict((k, pd.Series(v)) for k, v in data.items()) # Create DataFrame from the dictionary of Series df = pd.DataFrame(series_dict)
결과:
In [1]: df Out[1]: A B C 0 1.162543 1.681243 0.191287 1 0.459621 -0.141198 -0.109864 2 -0.866704 -0.128677 -0.511496 3 1.222436 -0.371449 -0.705894 4 -0.980584 1.255133 NaN 5 NaN -0.351051 NaN 6 NaN 0.443017 NaN 7 NaN -1.053693 NaN
분명히 DataFrame에는 배열 길이가 다른 누락된 값(NaN)이 포함되어 있으므로 배열 길이가 다양한 사전에서 열 길이가 다른 DataFrame을 생성할 수 있습니다.
위 내용은 다양한 배열 길이를 사용하여 사전에서 Pandas DataFrame을 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!