답변:
나는 당신이 열을 원한다고 가정 1
하고 9
? 그게
data[:, [1, 9]]
또는 이름으로 :
data[:, ['Column Name1','Column Name2']]
당신은에서 이름을 얻을 수 있습니다 data.dtype.names
...
내가 지적하고 싶은 한 가지는 추출하려는 열의 수가 1 인 경우 결과 행렬 은 예상대로 Mx1 행렬 이 아니라 대신 추출한 열의 요소를 포함하는 배열입니다.
이를 Matrix로 변환하려면 결과 배열에 reshape (M, 1) 메소드를 사용해야합니다.
data[:, 8:9]
. 여덟 개의 열이 필요하지만 추가 차원을 제거하지는 않습니다.
다만:
>>> m = np.matrix(np.random.random((5, 5)))
>>> m
matrix([[0.91074101, 0.65999332, 0.69774588, 0.007355 , 0.33025395],
[0.11078742, 0.67463754, 0.43158254, 0.95367876, 0.85926405],
[0.98665185, 0.86431513, 0.12153138, 0.73006437, 0.13404811],
[0.24602225, 0.66139215, 0.08400288, 0.56769924, 0.47974697],
[0.25345299, 0.76385882, 0.11002419, 0.2509888 , 0.06312359]])
>>> m[:,[1, 2]]
matrix([[0.65999332, 0.69774588],
[0.67463754, 0.43158254],
[0.86431513, 0.12153138],
[0.66139215, 0.08400288],
[0.76385882, 0.11002419]])
열이 순서대로 정렬 될 필요는 없습니다.
>>> m[:,[2, 1, 3]]
matrix([[0.69774588, 0.65999332, 0.007355 ],
[0.43158254, 0.67463754, 0.95367876],
[0.12153138, 0.86431513, 0.73006437],
[0.08400288, 0.66139215, 0.56769924],
[0.11002419, 0.76385882, 0.2509888 ]])
당신이 사용할 수있는 :
extracted_data = data.ix[:,['Column1','Column2']]
나는 여기서 해결책이 더 이상 파이썬 버전의 업데이트와 함께 작동하지 않는다고 생각합니다. 새로운 파이썬 함수로 그것을 수행하는 한 가지 방법은 다음과 같습니다.
extracted_data = data[['Column Name1','Column Name2']].to_numpy()
원하는 결과를 제공합니다.
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.to_numpy.html#pandas.DataFrame.to_numpy에서 찾을 수있는 설명서
extractData = data ([:, 1], [:, 9])를 사용할 수도 있습니다