Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python Pandas – CSV 파일에서 데이터를 읽고 처음 10개 행 중 'Car'와 일치하는 'product' 열 값 출력하기

'products.csv' 파일이 있다고 가정해 보겠습니다. 이 파일의 전체 행·열 개수와, 처음 10개 행 중에서 'product' 열의 값이 'Car'와 일치하는 결과는 다음과 같습니다.

products.csv 파일은 여기에서 다운로드할 수 있습니다.

Rows: 100 Columns: 8
id     product    engine    avgmileage    price    height_mm    width_mm    productionYear
1 2    Car      Diesel      21       16500      1530         1735        2020
4 5    Car       Gas      18       17450      1530         1780        2018
5 6    Car       Gas      19       15250      1530         1790        2019
8 9    Car      Diesel      23       16925      1530         1800        2018

이 문제는 두 가지 방법으로 해결할 수 있습니다.

방법 1: iloc 활용

  • products.csv 파일에서 데이터를 읽어 df에 저장합니다.

df = pd.read_csv('products.csv')
  • 행 개수(df.shape[0])와 열 개수(df.shape[1])를 출력합니다.

  • iloc[0:10,:]을 사용해 df에서 처음 10개 행만 추출하여 df1에 저장합니다.

df1 = df.iloc[0:10,:]
  • df1.iloc[:,1]을 사용해 product 열의 값이 'Car'와 일치하는 행을 찾습니다.

여기서 product 열의 인덱스는 1이며, 최종적으로 해당 데이터를 출력합니다.

df1[df1.iloc[:,1]=='Car']

예제

더 쉽게 이해할 수 있도록 다음 코드를 살펴보겠습니다.

import pandas as pd
df = pd.read_csv('products.csv')
print("Rows:",df.shape[0],"Columns:",df.shape[1])
df1 = df.iloc[0:10,:]
print(df1[df1.iloc[:,1]=='Car'])

방법 2: head() 활용

  • products.csv 파일에서 데이터를 읽어 df에 저장합니다.

df = pd.read_csv('products.csv')
  • 행 개수(df.shape[0])와 열 개수(df.shape[1])를 출력합니다.

  • df.head(10)으로 처음 10개 행을 가져와 df1에 저장합니다.

df1 = df.head(10)
  • 아래 방법을 사용해 product 열의 값이 'Car'와 일치하는 행을 추출합니다.

df1[df1['product']=='Car']

예제

이번에는 실제 구현 코드를 통해 더 자세히 이해해 보겠습니다.

import pandas as pd
df = pd.read_csv('products.csv')
print("Rows:",df.shape[0],"Columns:",df.shape[1])
df1 = df.head(10)
print(df1[df1['product']=='Car'])

출력 결과

Rows: 100 Columns: 8
id     product    engine    avgmileage    price    height_mm    width_mm    productionYear
1 2    Car      Diesel      21       16500      1530         1735       2020
4 5    Car       Gas        18       17450      1530         1780       2018
5 6    Car       Gas        19       15250      1530         1790       2019
8 9    Car      Diesel      23       16925      1530         1800       2018