Hướng dẫn how do i extract only certain columns in python? - làm cách nào để tôi chỉ trích xuất một số cột nhất định trong python?

Tôi đang cố gắng sử dụng Python để đọc các cột cụ thể trích xuất tệp CSV của mình thành một

cols = []
6 và hiển thị khung dữ liệu đó. Tuy nhiên, tôi không thấy khung dữ liệu, tôi nhận được chuỗi ([], dtype: object) làm đầu ra. Dưới đây là mã mà tôi đang làm việc với: Tài liệu của tôi bao gồm: Sản phẩm Sub_Product phát hành Sub_issue Consumer_Complaint_Narrative Company_Public_Response Công ty Trạng thái ZipCode Tags Consumer_Consent_Provided đã gửi Khiếu nại_id
company_public_response company state zipcode tags
consumer_consent_provided submitted_via date_sent_to_company
company_response_to_consumer timely_response consumer_disputed?
complaint_id

Tôi muốn trích xuất: Sub_Product vấn đề sub_issue tiêu dùng_complaint_narrative

import pandas as pd

df=pd.read_csv("C:\\....\\consumer_complaints.csv")
df=df.stack(level=0)
df2 = df.filter(regex='[B-F]')
df[df2]

hỏi ngày 6 tháng 2 năm 2018 lúc 11:10Feb 6, 2018 at 11:10

Hướng dẫn how do i extract only certain columns in python? - làm cách nào để tôi chỉ trích xuất một số cột nhất định trong python?

YagsyagsYags

4321 Huy hiệu vàng6 Huy hiệu bạc17 Huy hiệu đồng1 gold badge6 silver badges17 bronze badges

7

import pandas as pd

input_file = "C:\\....\\consumer_complaints.csv"
dataset = pd.read_csv(input_file)
df = pd.DataFrame(dataset)
cols = [1,2,3,4]
df = df[df.columns[cols]]

Ở đây chỉ định số cột của bạn mà bạn muốn chọn. Trong dataFrame, cột bắt đầu từ index = 0

cols = []

Bạn cũng có thể chọn cột theo tên khôn ngoan. Chỉ cần sử dụng dòng sau

df = df[["Column Name","Column Name2"]]

Đã trả lời ngày 6 tháng 2 năm 2018 lúc 11:25Feb 6, 2018 at 11:25

kepy97kepy97kepy97

91010 Huy hiệu bạc12 Huy hiệu đồng10 silver badges12 bronze badges

7

Một cách đơn giản để đạt được điều này sẽ như sau:

df = pd.read_csv("C:\\....\\consumer_complaints.csv")
df2 = df.loc[:,'B':'F']

Hy vọng điều đó sẽ giúp.

Đã trả lời ngày 6 tháng 2 năm 2018 lúc 11:23Feb 6, 2018 at 11:23

PawpawPaW

6393 Huy hiệu bạc7 Huy hiệu Đồng3 silver badges7 bronze badges

2

Điều này làm việc cho tôi, sử dụng cắt lát:

df=pd.read_csv

df1=df[n1:n2]

Trong đó

cols = []
7 là cả hai cột trong phạm vi, ví dụ: nếu bạn muốn cột 3-5, hãy sử dụng

df1=df[3:5]

Đối với cột đầu tiên, sử dụng

df1=df[0]

Mặc dù không chắc chắn làm thế nào để chọn một phạm vi không liên tục của các cột.

Chúng tôi cũng có thể sử dụng I.Loc. Dữ liệu đã cho trong dataset2:

dataset2.iloc[:3,[1,2]]

Sẽ nhổ ra 3 hàng cao nhất của cột 2-3 (ghi nhớ đánh số bắt đầu từ 0)

Hướng dẫn how do i extract only certain columns in python? - làm cách nào để tôi chỉ trích xuất một số cột nhất định trong python?

Sau đó DataSet2.iloc [: 3, [1,2]] phun ra

Hướng dẫn how do i extract only certain columns in python? - làm cách nào để tôi chỉ trích xuất một số cột nhất định trong python?

Đã trả lời ngày 11 tháng 12 năm 2021 lúc 0:48Dec 11, 2021 at 0:48

MSISMSISMSIS

1291 Huy hiệu bạc8 Huy hiệu đồng1 silver badge8 bronze badges

In [1]: import pandas as pd

  • Dữ liệu Titanic

    Hướng dẫn này sử dụng bộ dữ liệu Titanic, được lưu trữ dưới dạng CSV. Dữ liệu bao gồm các cột dữ liệu sau:

    • Pascetengerid: ID của mỗi hành khách.

    • Sống sót: Dấu hiệu cho dù hành khách có sống sót hay không.

      cols = []
      
      8 cho Có và
      cols = []
      
      9 cho không.

    • Trò chơi là một trong 3 lớp vé: Lớp

      cols = []
      
      9, Lớp
      df = df[["Column Name","Column Name2"]]
      
      1 và Lớp
      df = df[["Column Name","Column Name2"]]
      
      2.

    • Tên: Tên của hành khách.

    • Tình dục: Giới tính của hành khách.

    • Tuổi: Tuổi của hành khách trong nhiều năm.

    • SIBSP: Số anh chị em hoặc vợ hoặc chồng trên tàu.

    • PARCH: Số lượng cha mẹ hoặc con cái trên tàu.

    • Vé: Vé số hành khách.

    • Giá vé: Chỉ ra giá vé.

    • Cabin: Cabin Số hành khách.

    • Bắt đầu: Cảng bắt đầu.

    Để dữ liệu thô

    In [2]: titanic = pd.read_csv("data/titanic.csv")
    
    In [3]: titanic.head()
    Out[3]: 
       PassengerId  Survived  Pclass  ...     Fare Cabin  Embarked
    0            1         0       3  ...   7.2500   NaN         S
    1            2         1       1  ...  71.2833   C85         C
    2            3         1       3  ...   7.9250   NaN         S
    3            4         1       1  ...  53.1000  C123         S
    4            5         0       3  ...   8.0500   NaN         S
    
    [5 rows x 12 columns]
    

Làm cách nào để chọn các cột cụ thể từ ________ 33?#

  • Tôi quan tâm đến tuổi của hành khách Titanic.

    import pandas as pd
    
    input_file = "C:\\....\\consumer_complaints.csv"
    dataset = pd.read_csv(input_file)
    df = pd.DataFrame(dataset)
    cols = [1,2,3,4]
    df = df[df.columns[cols]]
    
    0

    Để chọn một cột duy nhất, hãy sử dụng dấu ngoặc vuông

    df = df[["Column Name","Column Name2"]]
    
    4 với tên cột của cột quan tâm.

Mỗi cột trong

df = df[["Column Name","Column Name2"]]
3 là
df = df[["Column Name","Column Name2"]]
6. Khi một cột duy nhất được chọn, đối tượng được trả về là một gấu trúc
df = df[["Column Name","Column Name2"]]
6. Chúng tôi có thể xác minh điều này bằng cách kiểm tra loại đầu ra:

import pandas as pd

input_file = "C:\\....\\consumer_complaints.csv"
dataset = pd.read_csv(input_file)
df = pd.DataFrame(dataset)
cols = [1,2,3,4]
df = df[df.columns[cols]]
1

Và xem

df = df[["Column Name","Column Name2"]]
8 của đầu ra:

import pandas as pd

input_file = "C:\\....\\consumer_complaints.csv"
dataset = pd.read_csv(input_file)
df = pd.DataFrame(dataset)
cols = [1,2,3,4]
df = df[df.columns[cols]]
2

df = df[["Column Name","Column Name2"]]
9 là một thuộc tính (hãy nhớ hướng dẫn về đọc và viết, không sử dụng dấu ngoặc đơn cho các thuộc tính) của một gấu trúc
df = df[["Column Name","Column Name2"]]
6 và
df = df[["Column Name","Column Name2"]]
3 chứa số lượng hàng và cột: (NROWS, NCOLumns). Một loạt gấu trúc là 1 chiều và chỉ có số lượng hàng được trả về.tutorial on reading and writing, do not use parentheses for attributes) of a pandas
df = df[["Column Name","Column Name2"]]
6 and
df = df[["Column Name","Column Name2"]]
3 containing the number of rows and columns: (nrows, ncolumns). A pandas Series is 1-dimensional and only the number of rows is returned.

  • Tôi quan tâm đến tuổi và giới tính của các hành khách Titanic.

    import pandas as pd
    
    input_file = "C:\\....\\consumer_complaints.csv"
    dataset = pd.read_csv(input_file)
    df = pd.DataFrame(dataset)
    cols = [1,2,3,4]
    df = df[df.columns[cols]]
    
    3

    Để chọn nhiều cột, hãy sử dụng danh sách các tên cột trong khung lựa chọn

    df = df[["Column Name","Column Name2"]]
    
    4.

Ghi chú

Các dấu ngoặc vuông bên trong xác định danh sách Python với tên cột, trong khi các dấu ngoặc bên ngoài được sử dụng để chọn dữ liệu từ gấu trúc

df = df[["Column Name","Column Name2"]]
3 như được thấy trong ví dụ trước.Python list with column names, whereas the outer brackets are used to select the data from a pandas
df = df[["Column Name","Column Name2"]]
3 as seen in the previous example.

Kiểu dữ liệu được trả về là một gấu trúc DataFrame:

import pandas as pd

input_file = "C:\\....\\consumer_complaints.csv"
dataset = pd.read_csv(input_file)
df = pd.DataFrame(dataset)
cols = [1,2,3,4]
df = df[df.columns[cols]]
4

import pandas as pd

input_file = "C:\\....\\consumer_complaints.csv"
dataset = pd.read_csv(input_file)
df = pd.DataFrame(dataset)
cols = [1,2,3,4]
df = df[df.columns[cols]]
5

Lựa chọn đã trả về

df = df[["Column Name","Column Name2"]]
3 với 891 hàng và 2 cột. Hãy nhớ rằng,
df = df[["Column Name","Column Name2"]]
3 là 2 chiều với cả kích thước hàng và cột.

Làm cách nào để lọc các hàng cụ thể từ ________ 33?#

Hướng dẫn how do i extract only certain columns in python? - làm cách nào để tôi chỉ trích xuất một số cột nhất định trong python?
  • Tôi quan tâm đến các hành khách trên 35 tuổi.

    import pandas as pd
    
    input_file = "C:\\....\\consumer_complaints.csv"
    dataset = pd.read_csv(input_file)
    df = pd.DataFrame(dataset)
    cols = [1,2,3,4]
    df = df[df.columns[cols]]
    
    6

    Để chọn các hàng dựa trên biểu thức có điều kiện, hãy sử dụng một điều kiện bên trong khung lựa chọn

    df = df[["Column Name","Column Name2"]]
    
    4.

Điều kiện bên trong khung lựa chọn

df = pd.read_csv("C:\\....\\consumer_complaints.csv")
df2 = df.loc[:,'B':'F']
8 Kiểm tra các hàng cột
df = pd.read_csv("C:\\....\\consumer_complaints.csv")
df2 = df.loc[:,'B':'F']
9 có giá trị lớn hơn 35:

import pandas as pd

input_file = "C:\\....\\consumer_complaints.csv"
dataset = pd.read_csv(input_file)
df = pd.DataFrame(dataset)
cols = [1,2,3,4]
df = df[df.columns[cols]]
7

Đầu ra của biểu thức có điều kiện (

df=pd.read_csv

df1=df[n1:n2]
0, nhưng cũng
df=pd.read_csv

df1=df[n1:n2]
1,
df=pd.read_csv

df1=df[n1:n2]
2,
df=pd.read_csv

df1=df[n1:n2]
3, ________ 54, sẽ hoạt động) thực sự là một gấu trúc
df = df[["Column Name","Column Name2"]]
6 của các giá trị boolean (
df=pd.read_csv

df1=df[n1:n2]
6 hoặc
df=pd.read_csv

df1=df[n1:n2]
7) với cùng một số của các hàng ban đầu. Một
df = df[["Column Name","Column Name2"]]
6 của các giá trị Boolean có thể được sử dụng để lọc
df = df[["Column Name","Column Name2"]]
3 bằng cách đặt nó vào giữa các dấu ngoặc chọn
df = df[["Column Name","Column Name2"]]
4. Chỉ các hàng mà giá trị là
df=pd.read_csv

df1=df[n1:n2]
6 sẽ được chọn.

Chúng tôi biết từ trước đó rằng Titanic

df = df[["Column Name","Column Name2"]]
3 ban đầu bao gồm 891 hàng. Hãy để một cái nhìn về số lượng hàng đáp ứng điều kiện bằng cách kiểm tra thuộc tính
df = df[["Column Name","Column Name2"]]
8 của kết quả
df = df[["Column Name","Column Name2"]]
3
df1=df[3:5]
6:

import pandas as pd

input_file = "C:\\....\\consumer_complaints.csv"
dataset = pd.read_csv(input_file)
df = pd.DataFrame(dataset)
cols = [1,2,3,4]
df = df[df.columns[cols]]
8

  • Tôi quan tâm đến các hành khách Titanic từ Cabin Class 2 và 3.

    import pandas as pd
    
    input_file = "C:\\....\\consumer_complaints.csv"
    dataset = pd.read_csv(input_file)
    df = pd.DataFrame(dataset)
    cols = [1,2,3,4]
    df = df[df.columns[cols]]
    
    9

    Tương tự như biểu thức có điều kiện, hàm có điều kiện

    df1=df[3:5]
    
    7 trả về
    df=pd.read_csv
    
    df1=df[n1:n2]
    
    6 cho mỗi hàng, các giá trị nằm trong danh sách được cung cấp. Để lọc các hàng dựa trên một hàm như vậy, hãy sử dụng hàm có điều kiện bên trong khung lựa chọn
    df = df[["Column Name","Column Name2"]]
    
    4. Trong trường hợp này, điều kiện bên trong khung lựa chọn
    df1=df[0]
    
    0 kiểm tra các hàng cột
    df1=df[0]
    
    1 là 2 hoặc 3.

Trên đây tương đương với việc lọc theo các hàng mà lớp là 2 hoặc 3 và kết hợp hai câu lệnh với toán tử

df1=df[0]
2 (hoặc):

cols = []
0

Ghi chú

Khi kết hợp nhiều câu lệnh có điều kiện, mỗi điều kiện phải được bao quanh bởi dấu ngoặc đơn

df1=df[0]
3. Hơn nữa, bạn không thể sử dụng ____ 74/________ 75 nhưng cần sử dụng toán tử
df1=df[0]
4
df1=df[0]
2 và toán tử
df1=df[0]
5
df1=df[0]
9.

  • Tôi muốn làm việc với dữ liệu hành khách mà độ tuổi được biết đến.

    cols = []
    
    1

    Hàm có điều kiện

    In [1]: import pandas as pd
    
    0 Trả về
    df=pd.read_csv
    
    df1=df[n1:n2]
    
    6 cho mỗi hàng Các giá trị không phải là giá trị
    In [1]: import pandas as pd
    
    2. Như vậy, điều này có thể được kết hợp với dấu ngoặc chọn
    df = df[["Column Name","Column Name2"]]
    
    4 để lọc bảng dữ liệu.

Bạn có thể tự hỏi điều gì thực sự đã thay đổi, vì 5 dòng đầu tiên vẫn là cùng một giá trị. Một cách để xác minh là kiểm tra xem hình dạng có thay đổi không:

cols = []
2

Hướng dẫn sử dụng

Để biết các chức năng chuyên dụng hơn trên các giá trị bị thiếu, hãy xem phần Hướng dẫn sử dụng về việc xử lý dữ liệu bị thiếu.handling missing data.

Làm cách nào để chọn các hàng và cột cụ thể từ ________ 33?#

  • Tôi quan tâm đến tên của những hành khách trên 35 tuổi.

    cols = []
    
    3

    Trong trường hợp này, một tập hợp con của cả hai hàng và cột được thực hiện trong một lần và chỉ sử dụng dấu ngoặc chọn

    df = df[["Column Name","Column Name2"]]
    
    4 là không đủ nữa. Các toán tử ____ 86/________ 87 được yêu cầu trước khung lựa chọn
    df = df[["Column Name","Column Name2"]]
    
    4. Khi sử dụng ________ 86/________ 87, phần trước dấu phẩy là hàng bạn muốn và phần sau dấu phẩy là các cột bạn muốn chọn.

Khi sử dụng tên cột, nhãn hàng hoặc biểu thức điều kiện, hãy sử dụng toán tử

In [1]: import pandas as pd
6 ở phía trước khung lựa chọn
df = df[["Column Name","Column Name2"]]
4. Đối với cả phần trước và sau dấu phẩy, bạn có thể sử dụng một nhãn duy nhất, một danh sách các nhãn, một lát nhãn, biểu thức có điều kiện hoặc dấu hai chấm. Sử dụng đại tràng chỉ định bạn muốn chọn tất cả các hàng hoặc cột.

  • Tôi quan tâm đến các hàng 10 đến 25 và cột 3 đến 5.

    cols = []
    
    4

    Một lần nữa, một tập hợp con của cả hai hàng và cột được thực hiện trong một lần và chỉ sử dụng giá đỡ lựa chọn

    df = df[["Column Name","Column Name2"]]
    
    4 là không đủ nữa. Khi cụ thể quan tâm đến một số hàng và/hoặc cột dựa trên vị trí của chúng trong bảng, hãy sử dụng toán tử
    In [1]: import pandas as pd
    
    7 trước khung lựa chọn
    df = df[["Column Name","Column Name2"]]
    
    4.

Khi chọn các hàng và/hoặc cột cụ thể với

In [1]: import pandas as pd
6 hoặc
In [1]: import pandas as pd
7, các giá trị mới có thể được gán cho dữ liệu đã chọn. Ví dụ: để gán tên
In [2]: titanic = pd.read_csv("data/titanic.csv")

In [3]: titanic.head()
Out[3]: 
   PassengerId  Survived  Pclass  ...     Fare Cabin  Embarked
0            1         0       3  ...   7.2500   NaN         S
1            2         1       1  ...  71.2833   C85         C
2            3         1       3  ...   7.9250   NaN         S
3            4         1       1  ...  53.1000  C123         S
4            5         0       3  ...   8.0500   NaN         S

[5 rows x 12 columns]
8 cho 3 phần tử đầu tiên của cột thứ ba:

cols = []
5

NHỚ

  • Khi chọn tập hợp con của dữ liệu, dấu ngoặc vuông

    df = df[["Column Name","Column Name2"]]
    
    4 được sử dụng.

  • Bên trong các dấu ngoặc này, bạn có thể sử dụng một nhãn/nhãn một cột, một danh sách các nhãn cột/hàng, một lát nhãn, biểu thức có điều kiện hoặc dấu hai chấm.

  • Chọn các hàng và/hoặc cột cụ thể bằng cách sử dụng

    In [1]: import pandas as pd
    
    6 khi sử dụng tên hàng và cột.

  • Chọn các hàng và/hoặc cột cụ thể bằng cách sử dụng

    In [1]: import pandas as pd
    
    7 khi sử dụng các vị trí trong bảng.

  • Bạn có thể gán các giá trị mới cho một lựa chọn dựa trên ________ 86/________ 87.