Chúng tôi sẽ tiếp tục tập này từ nơi chúng tôi đã dừng lại trong tập trước. Nếu bạn đã khởi động lại Jupyter hoặc bạn muốn sử dụng sổ ghi chép mới, hãy đảm bảo rằng bạn đã nhập pandas và đã đọc SN7577. tập dữ liệu 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ừ Dataframe gấu trúc
Nếu chúng tôi biết những cột nào chúng tôi muốn trước khi đọc dữ liệu từ tệp, chúng tôi có thể yêu cầu
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]
8 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 cho tham số 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]
9. Ngoài ra, chúng tôi cũng có thể cung cấp danh sách tên cộtdf_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]
[1286, 6]
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
Bâ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
[1286, 6]
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
0, làm thế nào bây giờ 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]
# Both of these statements are the same
print[df_SN7577['Q1']]
# and
print[df_SN7577.Q1]
0 1
1 3
2 10
3 9
...
Nếu chúng tôi quan tâm đến nhiều cột, phương pháp 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 có giá trị là
[1286, 6]
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
1 nhưng 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 [1286, 6]
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
2print[df_SN7577[['Q1', 'Q2', 'Q3']]]
Q1 Q2 Q3
0 1 -1 1
1 3 -1 1
2 10 3 2
3 9 -1 10
...
Bài tập
Điều gì xảy ra nếu bạn
- Liệt kê các cột bạn muốn sắp xếp theo thứ tự 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? . k. một lỗi đánh máy]
Giải pháp
print[df_SN7577[['Q3', 'Q2']]] print[df_SN7577[['Q3', 'Q2', 'Q3']]] print[df_SN7577[['Q33', 'Q2']]]
Lọc theo hàng
Bạn có thể lọc Khung dữ liệu theo hàng bằng cách chỉ định một phạm vi ở dạng
[1286, 6]
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
3. [1286, 6]
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
4 là hàng đầu tiên và [1286, 6]
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
5 là hàng ngoài hàng cuối cùng được yêu cầu# select row with index of 1, 2 and 3 [rows 2, 3 and 4 in the Dataframe]
df_SN7577_some_rows = df_SN7577[1:4]
df_SN7577_some_rows
Bài tập
Điều gì xảy ra nếu chúng tôi yêu cầu một hàng thay vì một phạm vi?
Giải pháp
df_SN7577[1]
Bạn gặp lỗi nếu chỉ xác định
6. Bạn cần sử dụng[1286, 6] Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object'] Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
7 hoặc[1286, 6] Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object'] Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
8 để trả về hàng đầu tiên.[1286, 6] Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object'] Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
9 luôn được yêu cầu. Bạn có thể tự sử dụng[1286, 6] Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object'] Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
9 để trả về tất cả các hàng[1286, 6] Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object'] Index[['Q1', 'Q2', 'Q3', 'sex', 'age', 'agegroups'], dtype='object']
Sử dụng tiêu chí để lọc hàng
Có nhiều khả năng bạn sẽ muốn chọn các hàng từ Khung dữ liệu dựa trên một số tiêu chí, chẳng hạn như “tất cả các hàng có giá trị cho Q2 là -1”
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]
0Các tiêu chí có thể phức tạp hơn và không giới hạn ở các giá trị của một 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]
1Ta có thể kết hợp chọn hàng với chọ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]
2Việc chọ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 hàng liền kề
Tuy nhiên, có một cách khác để chọn hàng bằng cách sử dụng chỉ mục hàng
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]
3Sử dụng phương pháp
# Both of these statements are the same
print[df_SN7577['Q1']]
# and
print[df_SN7577.Q1]
1 cho kết quả giống như ví dụ trước của chúng tôiTuy nhiên, bây giờ chúng ta có thể chỉ định một giá trị duy nhất và quan trọng hơn là chúng ta có thể sử dụng hàm
# Both of these statements are the same
print[df_SN7577['Q1']]
# and
print[df_SN7577.Q1]
2 để chỉ ra các bản ghi mà chúng ta 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 Khung dữ liệudf_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]
4Bạn cũng có thể chỉ định phạm vi cột bằng cách sử dụng lại phương pháp
# Both of these statements are the same
print[df_SN7577['Q1']]
# and
print[df_SN7577.Q1]
1 bằng cách sử dụng số chỉ mục cộtdf_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]
5Ngoài ra còn có một phương pháp
# Both of these statements are the same
print[df_SN7577['Q1']]
# and
print[df_SN7577.Q1]
4 cho phép bạn sử dụng các tên cộtdf_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]
6Lấy mẫu
Pandas có phương pháp
# Both of these statements are the same
print[df_SN7577['Q1']]
# and
print[df_SN7577.Q1]
5 cho phép bạn trích xuất một mẫu bản ghi từ Dataframedf_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]
7Những điểm chính
Nhập các cột cụ thể khi đọc trong một. csv với tham số
9df_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]
Chúng ta có thể dễ dàng xâu chuỗi các điều kiện boolean khi lọc các hàng của khung dữ liệu gấu trúc
Các phương thức
4 và# Both of these statements are the same print[df_SN7577['Q1']] # and print[df_SN7577.Q1]
1 cho phép chúng tôi lấy các hàng có nhãn cụ thể và tại các vị trí số nguyên cụ thể tương ứng# Both of these statements are the same print[df_SN7577['Q1']] # and print[df_SN7577.Q1]
Làm cách nào để đọc một cột cụ thể từ excel trong Python?
Khi chúng tôi sử dụng mô-đun pandas để đọc tệp Excel bằng phương thức read_excel, chúng tôi cũng có thể đọc các cột cụ thể trong tệp đó. Để đọc các cột cụ thể, chúng ta cần sử dụng tham số usecols trong phương thức read_excel .Làm cách nào để trích xuất dữ liệu cụ thể từ excel trong Python?
Trích xuất dữ liệu từ tệp Excel .Chuyển đổi tệp Excel sang CSVCài đặt openpyxlMở một tệp ExcelTruy cập dữ liệu trong một WorksheetTruy cập dữ liệu từ các ôTrích xuất dữ liệu từ các ô cụ thểtái cấu trúcĐọc thêmLàm cách nào để sao chép một cột từ trang tính excel này sang trang tính excel khác bằng Python?
Thủ tục. .1] Nhập thư viện openpyxl dưới dạng xl2] Mở tệp excel nguồn bằng đường dẫn chứa tệp đó. .3] Mở trang tính cần sao chép bằng chỉ mục của nó. .4] Mở tệp excel đích và bảng tính đang hoạt động trong đó5] Tính tổng số hàng, số cột trong file excel nguồn