두 개의 열이있는 데이터 프레임이 있습니다. 하나는 범주를 포함하고 다른 하나는 300 차원 벡터를 포함합니다. 카테고리 열의 각 값에 대해 저는 300 차원 벡터가 많이 있습니다. 필요한 것은 Category 열에 의해 데이터 프레임을 그룹화하는 동시에 각 Category와 관련된 모든 벡터의 중심 값을 얻는 것입니다. 파이썬 DataFrame - groupby 및 centroid 계산
Category Vector
Balance [1,2,1,-5,....,9]
Inquiry [-5,3,1,5,...,10]
Card [-3,1,2,3,...1]
Balance [1,3,-2,1,-5,...,7]
Card [3,1,3,4,...,2]
그래서 상기 경우에 원하는 출력 될 것이다 :
import numpy as np
def get_intent_centroid(array):
centroid = np.zeros(len(array[0]))
for vector in array:
centroid = centroid + vector
return centroid/len(array)
:
Category Vector
Balance [1,2.5,-0.5,-2,....,8]
Inquiry [-5,3,1,5,...,10]
Card [0,1,2.5,3.5,...,1.5]
이미 그 중심을 벡터의 어레이를 얻고 산출 다음 함수를 작성한 그래서 위의 함수를 데이터 프레임에 groupby
명령과 함께 적용하는 빠른 방법이 필요합니다.
내 서식 데이터 프레임을 용서해주십시오. 그러나 올바르게 서식을 지정하는 방법을 모르겠습니다. 영업의 요청에 따라
팬더의 열에서 벡터를 조작하는 방법을 잘 모르겠지만이 두 열을 목록으로 변경 한 다음 조작을 수행하고 팬더로 다시 변환 해보십시오! – Tarun
목록을 사용하지 않으면 전체 계산 절차가 훨씬 빨라질 것이라고 생각합니다. –
@ Tarun 목록을 사용하여 어떻게 접근합니까? –