내가 가진 모든 것을 수집하기 위해 pandas DataFrame을 만들려고하지만 단일 배열을 만들기 위해 목록에서 numpy 배열을 결합하는 데 어려움이 있습니다.
다음 데이터가 있다고 가정합니다.
df0 = pd.DataFrame([[1,2],[2,2],[3,1],[4,4],[5,4]], columns = ['A','B'])
collect = []
for i in range(5):
collect.append(df0.mean())
collect.append((i**2+2))
여기서는 동일한 데이터 프레임을 5 번 반복하여 더 간단하게 만들었지 만 실제 데이터에서는 모든 반복이 데이터 프레임의 다른 열을 통과합니다. 어쨌든 최종 결과를 원합니다.
A B i
3.0 2.6 2
3.0 2.6 3
3.0 2.6 6
3.0 2.6 11
3.0 2.6 18
그러나 나는 len(collect)
10 이기 때문에 5x3 행렬을 만들 수 없습니다 .append
. for-loop에서 올바른 방식으로 사용하지 않는 것 같습니다 . len(collect)
5 또는 15 인 배열을 어떻게 만듭니 까? 길이가 5이면 간단히 전치 collect
하거나 길이가 15이면 모양을 바꿀 수 있습니다.
편집 : 간단한 인덱스 열과 다른 것을 알 수 있도록 세 번째 열을 약간 변경했습니다.
당신은 그것을 할 수 있습니다 transform
df0.groupby([1]*len(df)).transform('mean')
A B
0 3 2.6
1 3 2.6
2 3 2.6
3 3 2.6
4 3 2.6
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다