Xử lý dữ liệu trong Julia
Katerina Zahradova
Instructor
Hàm áp dụng cho toàn bộ cột
maximum(), không phải max()Hàm áp dụng cho từng dòng
select()
transform()
combine()
Để sửa DataFrame tại chỗ:
select!(), transform!(), combine!()# Chọn cột
select(penguins, :species, :body_mass_g)
333x2 DataFrame
Row species body_mass_g
String15 Int64
___________________________
1 Adelie 3750
2 Adelie 3800
3 Adelie 3250
...
# Chọn và đổi tên cột
select(penguins, :species, :body_mass_g => :weight_g)
333x2 DataFrame
Row species weight_g
String15 Int64
___________________________
1 Adelie 3750
2 Adelie 3800
3 Adelie 3250
...
# Chọn cột và áp dụng hàm
select(penguins, :species, :body_mass_g => mean)
333x2 DataFrame
Row species body_mass_g_mm
String15 Float64
___________________________
1 Adelie 4207.06
2 Adelie 4207.06
3 Adelie 4207.06
...
# Thêm cột với giá trị tối đa của body_mass_g
transform(penguins, :body_mass_g => maximum)
333x8 DataFrame
Row species island ... body_mass_g sex body_mass_g_maximum
String15 String15 ... Int64 String7 Float64
___________________________________________________________________
1 Adelie Torgersen ... 3750 MALE 4207.06
2 Adelie Torgersen ... 3800 FEMALE 4207.06
...
# Kết hợp penguins với giá trị tối đa của body_mass_g
combine(penguins, :body_mass_g => maximum)
1×1 DataFrame
Row body_mass_g_mean
Float64
__________________________
1 4207.06
# Dùng nhiều hàm trên một cột
combine(penguins, :body_mass_g .=> [mean, minimum, maximum])
Row body_mass_g_mean body_mass_g_minimum body_mass_g_maximum
Float64 Float64 Float64
_______________________________________________________________
1 4207.06 2700 6300
# Truyền nhiều cột vào một hàm
select(penguins, [:body_mass_g, :flipper_length_mm] .=> mean)
Row body_mass_g_mean flipper_length_mm_mean
Float64 Float64
___________________________________________
1 4207.06 200.967
2 4207.06 200.967
...
select():
transform():
combine():
Xử lý dữ liệu trong Julia