[Nếu chúng ta giả sử nhiệt độ là 25 độ C và áp suất là 1013 hPa thì hệ số chuyển đổi là 1. 882]
In [4]: air_quality["london_mg_per_cubic"] = air_quality["station_london"] * 1.882 In [5]: air_quality.head[] Out[5]: station_antwerp .. london_mg_per_cubic datetime .. 2019-05-07 02:00:00 NaN .. 43.286 2019-05-07 03:00:00 50.5 .. 35.758 2019-05-07 04:00:00 45.0 .. 35.758 2019-05-07 05:00:00 NaN .. 30.112 2019-05-07 06:00:00 NaN .. NaN [5 rows x 4 columns]
Để tạo một cột mới, hãy sử dụng dấu ngoặc _______11_______ với tên cột mới ở bên trái của bài tập
Ghi chú
Việc tính toán các giá trị được thực hiện theo từng phần tử. Điều này có nghĩa là tất cả các giá trị trong cột đã cho được nhân với giá trị 1. 882 cùng một lúc. Bạn không cần sử dụng vòng lặp để lặp lại từng hàng
Tôi muốn kiểm tra tỷ lệ của các giá trị ở Paris so với Antwerp và lưu kết quả vào một cột mới
In [6]: air_quality["ratio_paris_antwerp"] = [ ...: air_quality["station_paris"] / air_quality["station_antwerp"] ...: ] ...: In [7]: air_quality.head[] Out[7]: station_antwerp .. ratio_paris_antwerp datetime .. 2019-05-07 02:00:00 NaN .. NaN 2019-05-07 03:00:00 50.5 .. 0.495050 2019-05-07 04:00:00 45.0 .. 0.615556 2019-05-07 05:00:00 NaN .. NaN 2019-05-07 06:00:00 NaN .. NaN [5 rows x 5 columns]
Việc tính toán lại là một phần tử khôn ngoan, do đó,
/
được áp dụng cho các giá trị trong mỗi hàng
Ngoài ra, các toán tử toán học khác [
In [2]: air_quality = pd.read_csv["data/air_quality_no2.csv", index_col=0, parse_dates=True] In [3]: air_quality.head[] Out[3]: station_antwerp station_paris station_london datetime 2019-05-07 02:00:00 NaN NaN 23.0 2019-05-07 03:00:00 50.5 25.0 19.0 2019-05-07 04:00:00 45.0 27.7 19.0 2019-05-07 05:00:00 NaN 50.4 16.0 2019-05-07 06:00:00 NaN 61.9 NaN0,
In [2]: air_quality = pd.read_csv["data/air_quality_no2.csv", index_col=0, parse_dates=True] In [3]: air_quality.head[] Out[3]: station_antwerp station_paris station_london datetime 2019-05-07 02:00:00 NaN NaN 23.0 2019-05-07 03:00:00 50.5 25.0 19.0 2019-05-07 04:00:00 45.0 27.7 19.0 2019-05-07 05:00:00 NaN 50.4 16.0 2019-05-07 06:00:00 NaN 61.9 NaN1,
In [2]: air_quality = pd.read_csv["data/air_quality_no2.csv", index_col=0, parse_dates=True] In [3]: air_quality.head[] Out[3]: station_antwerp station_paris station_london datetime 2019-05-07 02:00:00 NaN NaN 23.0 2019-05-07 03:00:00 50.5 25.0 19.0 2019-05-07 04:00:00 45.0 27.7 19.0 2019-05-07 05:00:00 NaN 50.4 16.0 2019-05-07 06:00:00 NaN 61.9 NaN2,
/
,…] hoặc toán tử logic [In [2]: air_quality = pd.read_csv["data/air_quality_no2.csv", index_col=0, parse_dates=True] In [3]: air_quality.head[] Out[3]: station_antwerp station_paris station_london datetime 2019-05-07 02:00:00 NaN NaN 23.0 2019-05-07 03:00:00 50.5 25.0 19.0 2019-05-07 04:00:00 45.0 27.7 19.0 2019-05-07 05:00:00 NaN 50.4 16.0 2019-05-07 06:00:00 NaN 61.9 NaN4,
In [2]: air_quality = pd.read_csv["data/air_quality_no2.csv", index_col=0, parse_dates=True] In [3]: air_quality.head[] Out[3]: station_antwerp station_paris station_london datetime 2019-05-07 02:00:00 NaN NaN 23.0 2019-05-07 03:00:00 50.5 25.0 19.0 2019-05-07 04:00:00 45.0 27.7 19.0 2019-05-07 05:00:00 NaN 50.4 16.0 2019-05-07 06:00:00 NaN 61.9 NaN5,
In [2]: air_quality = pd.read_csv["data/air_quality_no2.csv", index_col=0, parse_dates=True] In [3]: air_quality.head[] Out[3]: station_antwerp station_paris station_london datetime 2019-05-07 02:00:00 NaN NaN 23.0 2019-05-07 03:00:00 50.5 25.0 19.0 2019-05-07 04:00:00 45.0 27.7 19.0 2019-05-07 05:00:00 NaN 50.4 16.0 2019-05-07 06:00:00 NaN 61.9 NaN6,…] hoạt động theo nguyên tố. Cái sau đã được sử dụng để lọc các hàng của bảng bằng biểu thức điều kiện
Nếu bạn cần logic nâng cao hơn, bạn có thể sử dụng mã Python tùy ý thông qua
Tôi muốn đổi tên các cột dữ liệu thành mã định danh trạm tương ứng được sử dụng bởi OpenAQ
________số 8_______
In [9]: air_quality_renamed.head[] Out[9]: BETR801 FR04014 .. london_mg_per_cubic ratio_paris_antwerp datetime .. 2019-05-07 02:00:00 NaN NaN .. 43.286 NaN 2019-05-07 03:00:00 50.5 25.0 .. 35.758 0.495050 2019-05-07 04:00:00 45.0 27.7 .. 35.758 0.615556 2019-05-07 05:00:00 NaN 50.4 .. 30.112 NaN 2019-05-07 06:00:00 NaN 61.9 .. NaN NaN [5 rows x 5 columns]
Hàm này có thể được sử dụng cho cả nhãn hàng và nhãn cột. Cung cấp từ điển với các khóa tên hiện tại và giá trị tên mới để cập nhật tên tương ứng
Ánh xạ không nên chỉ giới hạn ở các tên cố định mà còn có thể là một chức năng ánh xạ. Ví dụ: chuyển đổi tên cột thành chữ thường cũng có thể được thực hiện bằng hàm
In [10]: air_quality_renamed = air_quality_renamed.rename[columns=str.lower] In [11]: air_quality_renamed.head[] Out[11]: betr801 fr04014 .. london_mg_per_cubic ratio_paris_antwerp datetime .. 2019-05-07 02:00:00 NaN NaN .. 43.286 NaN 2019-05-07 03:00:00 50.5 25.0 .. 35.758 0.495050 2019-05-07 04:00:00 45.0 27.7 .. 35.758 0.615556 2019-05-07 05:00:00 NaN 50.4 .. 30.112 NaN 2019-05-07 06:00:00 NaN 61.9 .. NaN NaN [5 rows x 5 columns]
Để hướng dẫn sử dụng
Chi tiết về đổi tên cột hoặc nhãn hàng được cung cấp trong phần hướng dẫn sử dụng trên
NHỚ
Tạo một cột mới bằng cách chỉ định đầu ra cho DataFrame với một tên cột mới ở giữa
[]
Làm cách nào để tạo một cột mới dựa trên các giá trị từ các cột khác trong gấu trúc?
Bạn có thể thêm/nối một cột mới vào DataFrame dựa trên các giá trị của một cột khác bằng cách sử dụng df. gán[] , df. apply[] và, np. các hàm where[] và trả về một Khung dữ liệu mới sau khi thêm một cột mới.Làm cách nào để tạo một cột mới trong gấu trúc dựa trên nhiều điều kiện?
Kết luận. .Tạo cột mới bằng hàm tùy chỉnh có điều kiện và giá trị trả về để áp dụng trên tất cả các hàng của khung dữ liệuSử dụng lựa chọn gọn gàng với danh sách các điều kiện và các lựa chọn tương ứng của chúng làm tham số để tạo một cột mớiTạo điều kiện dưới dạng mặt nạ boolean để chuyển vào. loc để cập nhật giá trị cột mới