Làm cách nào để viết nhiều cột trong một tệp trong python?

Bằng cách sử dụng df[], loc[], iloc[] và get[], bạn có thể chọn nhiều cột từ DataFrame của gấu trúc. Khi làm việc với cấu trúc dạng bảng, chúng ta thường được yêu cầu lấy dữ liệu từ các cột. Tương tự như SQL, việc chọn nhiều cột trong pandas DataFrame là một trong những tác vụ được thực hiện thường xuyên nhất khi thao tác dữ liệu. Pandas cung cấp một số kỹ thuật để truy xuất hiệu quả các tập hợp con dữ liệu từ DataFrame của bạn

Pandas DataFrame là cấu trúc dữ liệu dạng bảng hai chiều với các trục được gắn nhãn. tôi. e. cột và hàng. Việc chọn nhiều cột từ DataFrame dẫn đến một DataFrame mới chỉ chứa các cột đã chọn được chỉ định từ DataFrame ban đầu


import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]
2 được sử dụng để chọn cột theo tên và

import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]
3 được sử dụng để chọn cột theo chỉ mục. Bạn cũng có thể sử dụng các toán tử này để chọn các hàng từ DataFrame của gấu trúc. Ngoài ra, hãy tham khảo một bài viết liên quan về cách lấy giá trị ô từ DataFrame của gấu trúc

1. Ví dụ nhanh về Chọn nhiều cột trong pandas

Nếu bạn đang vội, dưới đây là một số ví dụ nhanh về cách chọn nhiều cột từ DataFrame của gấu trúc theo tên và chỉ mục cột


# Below are quick example

# By using df[] Notation to select multiple columns
df2 = df[["Courses","Fee","Duration"]] 

# Using loc[] to take column slices
df2 = df.loc[:, ["Courses","Fee","Duration"]] # Selecte multiple columns
df2 = df.loc[:, ["Courses","Fee","Discount"]] # Select Random columns
df2 = df.loc[:,'Fee':'Discount'] # Select columns between two columns
df2 = df.loc[:,'Duration':]  # Select columns by range
df2 = df.loc[:,:'Duration']  # Select columns by range
df2 = df.loc[:,::2]          # Select every alternate column

# Using iloc[] to select column by Index
df2 = df.iloc[:,[1,3,4]] # Select columns by Index
df2 = df.iloc[:,1:4] # Select between indexes 1 and 4 [2,3,4]
df2 = df.iloc[:,2:] # Select From 3rd to end
df2 = df.iloc[:,:2] # Select First Two Columns

#Using get[]
df2 = df.get[['Courses','Fee']]

Bây giờ, hãy chạy các ví dụ này bằng cách tạo DataFrame mẫu với một vài hàng và cột. Khung dữ liệu của chúng tôi chứa các tên cột


import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]
4,

import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]
5,

import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]
6 và

import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]
7


import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]

Sản lượng dưới sản lượng

________số 8_______

2. Sử dụng df[] & loc[] để chọn nhiều cột theo tên

Bằng cách sử dụng


import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]
8 & gấu trúc. Khung dữ liệu. loc[] bạn có thể chọn nhiều cột theo tên hoặc nhãn. Để chọn các cột theo tên, cú pháp là

import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]
9; . Hoặc, sử dụng cú pháp.

   Courses    Fee Duration  Discount   Tutor
0    Spark  20000   30days      1000  Michel
1  PySpark  25000   40days      2300     Sam
3có nhãn là danh sách các tên cột cần lấy


#loc[] syntax to slice columns
df.loc[:,start:stop:step]

2. 1 Chọn cột Sử dụng ký hiệu df[]

Để chọn một hoặc nhiều cột theo nhãn hoặc tên, tất cả những gì bạn cần là cung cấp tên của các cột dưới dạng danh sách. Ở đây chúng tôi sử dụng ký hiệu


   Courses    Fee Duration  Discount   Tutor
0    Spark  20000   30days      1000  Michel
1  PySpark  25000   40days      2300     Sam
4 thay vì cách tiếp cận

   Courses    Fee Duration  Discount   Tutor
0    Spark  20000   30days      1000  Michel
1  PySpark  25000   40days      2300     Sam
5


# Select Columns by labels
df2 = df[["Courses","Fee","Duration"]]
#Returns
#   Courses    Fee Duration
#0    Spark  20000   30days
#1  PySpark  25000   40days

2. 2 Chọn nhiều cột bằng df. lộc[]

Đôi khi bạn có thể muốn chọn nhiều cột từ DataFrame của gấu trúc, bạn có thể thực hiện việc này bằng cách chuyển nhiều tên/nhãn cột dưới dạng danh sách


# Select Multiple Columns
df2 = df.loc[:, ["Courses","Fee","Discount"]]
#Returns
#   Courses    Fee  Discount
#0    Spark  20000      1000
#1  PySpark  25000      2300

2. 3 Chọn Cột DataFrame theo Phạm vi

Khi bạn muốn chọn cột theo phạm vi, hãy cung cấp tên cột bắt đầu và kết thúc

  • Bằng cách không cung cấp cột bắt đầu, loc[] chọn từ đầu
  • Bằng cách không cung cấp điểm dừng, loc[] chọn tất cả các cột từ nhãn bắt đầu
  • Cung cấp cả bắt đầu và dừng, chọn tất cả các cột ở giữa

# Select all columns between Fee an Discount columns
df2 = df.loc[:,'Fee':'Discount']
#Returns
#     Fee Duration  Discount
#0  20000   30days      1000
#1  25000   40days      2300

# Select from 'Duration' column
df2 = df.loc[:,'Duration':]
#Returns
#  Duration  Discount   Tutor
#0   30days      1000  Michel
#1   40days      2300     Sam

# Select from beginning and end at 'Duration' column
df2 = df.loc[:,:'Duration']
#Returns
#   Courses    Fee Duration
#0    Spark  20000   30days
#1  PySpark  25000   40days

2. 4 Chọn Mọi Cột Khác

Sử dụng loc [], bạn cũng có thể chọn mọi cột thay thế từ DataFrame của gấu trúc


# Select every alternate column
df2 = df.loc[:,::2]
#Returns
#   Courses Duration   Tutor
#0    Spark   30days  Michel
#1  PySpark   40days     Sam

3. Sử dụng iloc[] – Chọn nhiều cột theo chỉ mục

Bằng cách sử dụng gấu trúc. Khung dữ liệu. iloc[] bạn cũng có thể chọn nhiều cột từ DataFrame theo vị trí/chỉ mục. ; . Bạn có thể sử dụng gấu trúc. Khung dữ liệu. iloc[] với cú pháp


   Courses    Fee Duration  Discount   Tutor
0    Spark  20000   30days      1000  Michel
1  PySpark  25000   40days      2300     Sam
6 trong đó

   Courses    Fee Duration  Discount   Tutor
0    Spark  20000   30days      1000  Michel
1  PySpark  25000   40days      2300     Sam
0 cho biết chỉ mục của cột đầu tiên cần lấy,

   Courses    Fee Duration  Discount   Tutor
0    Spark  20000   30days      1000  Michel
1  PySpark  25000   40days      2300     Sam
1 cho biết chỉ mục của cột cuối cùng cần lấy và

   Courses    Fee Duration  Discount   Tutor
0    Spark  20000   30days      1000  Michel
1  PySpark  25000   40days      2300     Sam
2 cho biết số lượng chỉ mục cần tăng sau mỗi lần trích xuất. Hoặc, sử dụng cú pháp.

#loc[] syntax to slice columns
df.loc[:,start:stop:step]
0với các chỉ số là danh sách các chỉ số cột cần lấy

3. 1. Chọn nhiều cột bằng df. iloc[]

Ví dụ dưới đây truy xuất


#loc[] syntax to slice columns
df.loc[:,start:stop:step]
1,

#loc[] syntax to slice columns
df.loc[:,start:stop:step]
2 và

#loc[] syntax to slice columns
df.loc[:,start:stop:step]
3 và trả về một Khung dữ liệu mới với các cột được chọn


# Selected by column position
df2 = df.iloc[:,[1,3,4]]
#Returns
#     Fee  Discount   Tutor
#0  20000      1000  Michel
#1  25000      2300     Sam

3. 2 Chọn Cột theo Phạm vi Vị trí

Bạn cũng có thể cắt một DataFrame theo một loạt các vị trí


# Select between indexes 1 and 4 [2,3,4]
df2 = df.iloc[:,1:4]
#Returns
#     Fee Duration  Discount
#0  20000   30days      1000
#1  25000   40days      2300

# Select From 3rd to end
df2 = df.iloc[:,2:]
#Returns
#  Duration  Discount   Tutor
#0   30days      1000  Michel
#1   40days      2300     Sam

# Select First Two Columns
df2 = df.iloc[:,:2]
#Returns
#   Courses    Fee
#0    Spark  20000
#1  PySpark  25000

Để lấy cột cuối cùng, hãy sử dụng


#loc[] syntax to slice columns
df.loc[:,start:stop:step]
4 và chỉ lấy cột đầu tiên

#loc[] syntax to slice columns
df.loc[:,start:stop:step]
5

4. Sử dụng các phương thức filter[] và get[]

Bạn cũng có thể chọn nhiều cột bằng cách sử dụng DataFrame. phương thức lọc[]


import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]
0

5. Hoàn thành ví dụ về việc chọn nhiều cột

Dưới đây là một ví dụ đầy đủ về cách chọn nhiều cột từ DataFrame của gấu trúc


import pandas as pd
technologies = {
    'Courses':["Spark","PySpark"],
    'Fee' :[20000,25000],
    'Duration':['30days','40days'],
    'Discount':[1000,2300]
              }
df = pd.DataFrame[technologies]
print[df]
1

Phần kết luận

Trong bài viết này, bạn đã học cách chọn nhiều cột từ DataFrame của gấu trúc bằng DataFrame. loc [] và DataFrame. các hàm iloc[] và sử dụng get[] và filter[]

Chủ Đề