Programing

R의 python dict에 해당

lottogame 2020. 11. 9. 07:41
반응형

R의 python dict에 해당


R에서 python dict와 동등하게 만들고 싶습니다. 기본적으로 python에서는 다음과 같습니다.

visited = {}

if atom_count not in visited:
  Do stuff
  visited[atom_count] = 1

아이디어는 특정 atom_count를 본 경우 방문한 적이 있습니다 [atom_count] = 1입니다. 따라서 해당 atom_count를 다시 보면 "Do Stuff"를 수행하지 않습니다. Atom_Count는 정수입니다.

감사!


R의 python dict에 가장 가까운 것은 단순히 목록입니다. 대부분의 R 데이터 유형과 마찬가지로 목록에는 이름-값 쌍의 집합처럼 작동 할 수있는 이름 속성이있을 수 있습니다.

> l <- list(a = 1,b = "foo",c = 1:5)
> l
$a
[1] 1

$b
[1] "foo"

$c
[1] 1 2 3 4 5

> l[['c']]
[1] 1 2 3 4 5
> l[['b']]
[1] "foo"

이제 일반적인 면책 조항에 대해 : 정확히 동일 하지는 않습니다 . 차이가있을 것입니다. 그래서 당신은 말 그대로 파이썬에서 dict를 사용하는 것과 똑같은 방식으로 목록을 사용하려고 시도하는 것에 실망하게 될 것입니다.


해시 테이블 (새로운 환경 만들기)을 사용하는 것이 문제의 해결책이 될 수 있다고 생각합니다. 이 작업을 수행하는 방법을 입력했지만 어제 talkstats.com에서 입력했습니다.

사전이 크고 단 두 개의 열만 있다면 이것이 갈 길일 수 있습니다. 다음은 샘플 R 코드가있는 talkstats 스레드에 대한 링크입니다.

해시 테이블 링크


귀하의 경우와 같이 "사전"이 동일한 유형의 값을 저장하도록하려면 벡터를 사용하고 각 요소의 이름을 지정하면됩니다.

> l <- c(a = 1, b = 7, f = 2)
> l
a b f 
1 7 2

"키"에 액세스하려면을 사용하십시오 names.

> names(l)
[1] "a" "b" "f"

참고 URL : https://stackoverflow.com/questions/10678872/equivalent-of-a-python-dict-in-r

반응형