Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

임의의 10행과 2열의 모음을 생성하는 Python 프로그램을 작성하십시오. 두 행이 동일한 모음과 일치하면 일치하는 열의 인덱스와 개수를 인쇄합니다.

<시간/>

데이터 프레임이 있다고 가정합니다.

 col1 col2
0 o    e
1 e    e
2 i    u
3 e    o
4 i    i
5 u    o
6 e    a
7 u    o
8 a    u
9 e    a

일치하는 인덱스 및 개수에 대한 결과는 다음과 같습니다.

index is
 col1 col2
1 e    e
4 i    i
count is 2

해결책

이 문제를 해결하기 위해 다음 단계를 따릅니다. -

  • 데이터 프레임 정의

  • 아래 방법을 사용하여 첫 번째와 두 번째 일치하는 인덱스 값을 비교합니다.

df.iloc[np.where(df.col1==df.col2)])
  • 아래 단계를 사용하여 일치하는 열의 총 개수를 찾습니다.

len(df.iloc[np.where(df.col1==df.col2)])

예시

더 나은 이해를 위해 다음 구현을 살펴보겠습니다. −

import pandas as pd
import numpy as np
df = pd.DataFrame({'col1': np.random.choice(['a','e','i','o','u'], 10), 'col2': np.random.choice(['a','e','i','o','u'],10)
                  })
print("DataFrame is \n", df)
print("index is \n",df.iloc[np.where(df.col1==df.col2)])
print("count is \n", len(df.iloc[np.where(df.col1==df.col2)]))

출력

 col1 col2
0 o    e
1 e    e
2 i    u
3 e    o
4 i    i
5 u    o
6 e    a
7 u    o
8 a    u
9 e    a
index is
 col1 col2
1 e    e
4 i    i
count is 2