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 = []
4 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_idcompany_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
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 = []
5 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ụngdf1=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]
Sau đó DataSet2.iloc [: 3, [1,2]] phun ra
Đã 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
Tổng quan
Giảng dạy: 15 phút Bài tập: 15 phút 15 min
Exercises: 15 minCâu hỏi
Làm thế nào tôi có thể trích xuất các hàng và cột cụ thể từ DataFrame?
Làm cách nào để thêm hoặc xóa các cột khỏi DataFrame?
Làm thế nào tôi có thể tìm và thay đổi các giá trị bị thiếu trong một khung dữ liệu?
Mục tiêu
Xác định lập chỉ mục vì nó liên quan đến cấu trúc dữ liệu
Chọn các cột cụ thể từ khung dữ liệu
Chọn các hàng cụ thể từ khung dữ liệu dựa trên các biểu thức có điều kiện
Sử dụng các chỉ mục để truy cập các hàng và cột
Sao chép khung dữ liệu
Thêm cột vào khung dữ liệu
Phân tích bộ dữ liệu có giá trị thiếu/null
Chúng tôi sẽ tiếp tục tập phim này từ nơi chúng tôi rời khỏi tập cuối. Nếu bạn đã khởi động lại Jupyter hoặc bạn muốn sử dụng một cuốn sổ mới, hãy chắc chắn rằng bạn nhập gấu trúc và đã đọc bộ dữ liệu SN7577.TAB vào DataFrame.
import pandas as pd
df_SN7577 = pd.read_csv["SN7577.tab", sep='\t']
Chọn các hàng và cột từ một khung dữ liệu gấu trúc
Nếu chúng ta biết những cột nào chúng ta muốn trước khi chúng ta đọc dữ liệu từ tệp, chúng ta có thể nói
cols = []
6 chỉ nhập các cột đó bằng cách chỉ định các cột theo số chỉ mục của chúng [bắt đầu từ 0] dưới dạng danh sách vào tham số cols = []
7. Ngoài ra, chúng tôi cũng có thể cung cấp một danh sách các tên cột.df_SN7577_some_cols = pd.read_csv["SN7577.tab", sep='\t', usecols= [0,1,2,173,174,175]]
print[df_SN7577_some_cols.shape]
print[df_SN7577_some_cols.columns]
df_SN7577_some_cols = pd.read_csv["SN7577.tab", sep='\t', usecols= ['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups']]
print[df_SN7577_some_cols.columns]
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]]
0Bây giờ chúng ta hãy giả sử rằng chúng ta đọc trong tệp hoàn chỉnh hiện có trong DataFrame
cols = []
8, làm thế nào chúng ta có thể tham khảo các cột cụ thể?Có hai cách thực hiện việc này bằng cách sử dụng tên cột [hoặc nhãn]:
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]]
1Nếu chúng ta quan tâm đến nhiều cột, phương thức thứ 2 ở trên không thể được sử dụng. Tuy nhiên, trong lần đầu tiên, mặc dù chúng tôi đã sử dụng một chuỗi với giá trị
cols = []
9, chúng tôi cũng có thể đã cung cấp một danh sách các chuỗi. Hãy nhớ rằng các danh sách được đính kèm trong df = df[["Column Name","Column Name2"]]
0.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]]
2import 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]]
3Tập thể dục
Điều gì xảy ra nếu bạn:
- Liệt kê các cột bạn muốn theo thứ tự từ cách chúng xuất hiện trong tệp?
- Đặt cùng một tên cột trong hai lần?
- Đặt tên cột không tồn tại? [a.k.a lỗi đánh máy]
Dung dịch
4import 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]]
Lọc theo hàng
Bạn có thể lọc DataFrame bằng các hàng bằng cách chỉ định một phạm vi dưới dạng
df = df[["Column Name","Column Name2"]]
1. df = df[["Column Name","Column Name2"]]
2 là hàng đầu tiên và df = df[["Column Name","Column Name2"]]
3 là một hàng ngoài hàng cuối cùng cần thiết.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]]
5Tập thể dục
Điều gì xảy ra nếu bạn:
Dung dịch
Lọc theo hàng
Bạn có thể lọc DataFrame bằng các hàng bằng cách chỉ định một phạm vi dưới dạng df = df[["Column Name","Column Name2"]]
1. df = df[["Column Name","Column Name2"]]
2 là hàng đầu tiên và df = df[["Column Name","Column Name2"]]
3 là một hàng ngoài hàng cuối cùng cần thiết.
df = df[["Column Name","Column Name2"]]
df = df[["Column Name","Column Name2"]]
df = df[["Column Name","Column Name2"]]
Điều gì xảy ra nếu chúng ta yêu cầu một hàng thay vì phạm vi?
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]]
6Bạn gặp lỗi nếu bạn chỉ chỉ định
df = df[["Column Name","Column Name2"]]
4. Bạn cần sử dụng df = df[["Column Name","Column Name2"]]
5 hoặc df = df[["Column Name","Column Name2"]]
6 để trả lại hàng đầu tiên. df = df[["Column Name","Column Name2"]]
7 luôn được yêu cầu. Bạn có thể sử dụng df = df[["Column Name","Column Name2"]]
7 một mình để trả lại tất cả các hàng.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]]
7Sử dụng các tiêu chí để lọc hàng
Nhiều khả năng bạn sẽ muốn chọn các hàng từ DataFrame dựa trên một số tiêu chí, chẳng hạn như tất cả các hàng trong đó giá trị cho Q2 là -1.
Các tiêu chí có thể phức tạp hơn và không giới hạn trong một giá trị của một cột:
Chúng ta có thể kết hợp lựa chọn hàng với lựa chọn cột:
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]]
9import 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]]
8Chọn các hàng trên chỉ mục hàng được sử dụng hạn chế trừ khi bạn cần chọn một phạm vi tiếp giáp của hàng.
cols = []
0Tuy nhiên, có một cách khác để chọn hàng bằng chỉ mục hàng:
cols = []
1Sử dụng phương thức
df = df[["Column Name","Column Name2"]]
9 cho kết quả tương tự như ví dụ trước của chúng tôi.cols = []
2Tuy nhiên, bây giờ chúng tôi có thể chỉ định một giá trị duy nhất và quan trọng hơn là chúng tôi có thể sử dụng hàm df = pd.read_csv["C:\\....\\consumer_complaints.csv"]
df2 = df.loc[:,'B':'F']
0 để chỉ ra các bản ghi mà chúng tôi muốn. Điều này có thể hữu ích để thực hiện các lựa chọn giả ngẫu nhiên của các hàng từ khắp DataFrame.
df = pd.read_csv["C:\\....\\consumer_complaints.csv"]
df2 = df.loc[:,'B':'F']
Bạn cũng có thể chỉ định các phạm vi cột bằng phương thức
df = df[["Column Name","Column Name2"]]
9 bằng cách sử dụng các số chỉ mục cột:cols = []
3Ngoài ra còn có một phương thức
2 cho phép bạn sử dụng tên cột.df = pd.read_csv["C:\\....\\consumer_complaints.csv"] df2 = df.loc[:,'B':'F']
Lấy mẫu
Pandas có phương pháp
3 cho phép bạn trích xuất một mẫu hồ sơ từ DataFrame.df = pd.read_csv["C:\\....\\consumer_complaints.csv"] df2 = df.loc[:,'B':'F']
Những điểm chính
Nhập các cột cụ thể khi đọc trong một .csv với tham số
7cols = []