ravel () 함수를 사용하기위한 목록에서 배열로 변환


109

파이썬에 목록이 있고 ravel()함수 를 사용할 수 있도록 배열로 변환하고 싶습니다 .


2
실제로 좋지 않은 질문을 많이 생성하는 대신 설명 요청에 응답하고 질문을 개선하십시오. 마지막 으로이 답변을 주의 깊게 읽으십시오 . 나는 그것이 당신의 큰 문제를 해결한다고 생각합니다 ...
jorgeca 2013-04-07

답변:


237

사용 numpy.asarray:

import numpy as np
myarray = np.asarray(mylist)

25
사실 myarray = np.array(mylist)충분해야합니다.
fgb

11
물론,이 배열을 복사 할 수 있지만 단순히 반환하지 않습니다으로 그것이 원래의 데이터 복사본을 wawnt 할 수 있는지의 하나 않는 한 그것을 사용하는 좋은 습관, 그래서 그것이 더 안전 asarray
EnricoGiampieri

1
@EnricoGiampieri, 공평하지만 이것에서 배열을 얻을 필요가 없습니까? 나는 당신이 새로운 배열 객체를 생성하는 명령을 얻지 못하는 방법을 따르지 않는다고 생각합니다.
fgb

두 명령 모두 목록에서 시작하여 새 배열을 생성합니다. 확실하지만 특정 방법을 적용하기 위해 입력을 특정 형식으로 변환하는 것이 종종 요점이며 이는 OP의 경우와 더 비슷합니다. asarray를 사용하는 것은 새로운 사본이 필요하다는 것을 확신하지 않는 한 좋은 습관입니다. 단순히 타이핑 array만으로도 충분하지만, 우리가 여기있는 동안 OP를 좋은 습관으로 교육시킬 수있는 가능성을 놓아 두는 이유는 무엇입니까?
EnricoGiampieri 2013

@fgb가 적절한 솔루션을 제안했다고 말하고 싶었습니다. '.asarray'함수는 numpy 객체를 반환하는 반면 '.array는 배열을 직접 반환합니다. 어쨌든, 여러분 모두 감사합니다!
Adrian Grzywaczewski

7

int 배열과 목록 생성

from array import array
listA = list(range(0,50))
for item in listA:
    print(item)
arrayA = array("i", listA)
for item in arrayA:
    print(item)

"i"는 무엇을 의미합니까? 그리고 그것은 str에 대해 무엇이어야합니까?
Dany Y

6

나는 추가 모듈을 사용하지 않고 이것을 할 수있는 방법을 원했습니다. 먼저 목록을 문자열로 전환 한 다음 배열에 추가합니다.

dataset_list = ''.join(input_list)
dataset_array = []
for item in dataset_list.split(';'): # comma, or other
    dataset_array.append(item)

오타를 수정할 수 없습니다. 첫 번째 행은 다음과 같아야합니다dataset_list = ';'.join(input_list)
Alex Poca

2

원하는 것이 ravel(중첩, I s'pose?) 목록에 전화 하는 것이라면 직접 numpy할 수 있으며 캐스팅을 수행합니다.

L = [[1,None,3],["The", "quick", object]]
np.ravel(L)
# array([1, None, 3, 'The', 'quick', <class 'object'>], dtype=object)

또한 언급 할만큼 가치가 있다고 당신은 통과 할 필요가 numpy전혀 .


-1

다음 코드를 사용하십시오.

import numpy as np

myArray=np.array([1,2,4])  #func used to convert [1,2,3] list into an array
print(myArray)

-13

변수 b에 목록이 있으면 간단히 다음을 수행 할 수 있습니다.

새 변수 "a"를 a=[] 다음 과 같이 생성 한 다음 목록을 "a"에 다음 과 같이 할당합니다.a=b

이제 "a"에는 목록 "b"의 모든 구성 요소가 배열에 있습니다.

그래서 당신은 성공적으로 목록을 배열로 변환했습니다.


8
사실, 아니 ... 이것은 완전히 잘못되었습니다. numpy 배열이 아닌 동일한 목록을 가리키는 두 개의 변수 만 있으면됩니다.
Ajean
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.