Làm cách nào tôi có thể tạo DataFrame trong python?

Khi khám phá dữ liệu bằng Python, DataFrames giúp phân tích và thao tác dữ liệu để phân tích dễ dàng. Bài viết này sẽ xem xét một số thông tin chi tiết khi làm việc với DataFrames

Python là một công cụ mạnh mẽ khi làm việc với dữ liệu. Các phẩm chất như khả năng mở rộng và nhiều thư viện để phân tích dữ liệu và ứng dụng khoa học dữ liệu làm cho nó trở nên linh hoạt. Tuy nhiên, điều thường được đánh giá thấp nhưng có giá trị cao về Python là sự dễ dàng mà chúng ta có thể thao tác dữ liệu với các cấu trúc dữ liệu linh hoạt. Một trong những cấu trúc này là DataFrame

Khung dữ liệu là gì?

Để bắt đầu, điều quan trọng cần biết là có nhiều cấu trúc khác nhau mà dữ liệu có thể sử dụng. Đối với phần lớn các trường hợp, hầu hết dữ liệu ở dạng bảng (i. e. , dữ liệu được cấu trúc thành các hàng đại diện cho một mục nhập). Bạn có thể đã quen thuộc với điều này nếu bạn đã từng làm việc với bảng tính Excel hoặc bảng SQL. Các tập hợp của mỗi hàng trong số này, đại diện cho một mục nhập dữ liệu nhất định và các thuộc tính của chúng được tạo thành cấu trúc hai chiều trong đó các cột có tiêu đề bao gồm các giá trị của cùng một thuộc tính

Những cấu trúc này có một số phẩm chất độc đáo

  1. Hàng - đại diện cho một điểm nhập dữ liệu duy nhất
  2. Cột - tương ứng với một nhóm liên quan đến chất lượng riêng của từng điểm dữ liệu nhất định thường có tiêu đề
  3. Chỉ mục - một mã định danh duy nhất cho mỗi mục nhập dữ liệu

Làm cách nào tôi có thể tạo DataFrame trong python?

Mặc dù chúng có thể có các tên khác nhau tùy thuộc vào ngôn ngữ lập trình hoặc công cụ ứng dụng đang được sử dụng, nhưng trong Python, chúng tôi gọi các cấu trúc này là DataFrames. Thư viện chính được sử dụng để làm việc với các cấu trúc này là Pandas

Làm thế nào để bạn tạo một DataFrame?

Khi nói đến việc tạo DataFrame, bạn có thể nhập nó từ một tệp bên ngoài hoặc tự tạo nó trong Python

Phương pháp 1 — Nhập dữ liệu từ tệp

Trong thế giới thực, một tập dữ liệu thường được đọc vào Python thông qua một nguồn bên ngoài quản lý nó. Chúng tôi có thể tìm thấy các bộ dữ liệu này trong nhiều loại tệp, nhưng chúng tôi thường tìm thấy chúng nhất ở dạng tệp giá trị được phân tách bằng dấu phẩy (CSV). Rất may là trong thư viện Pandas có một hàm có tác dụng chuyển dữ liệu dạng này sang DataFrame gọi là pandas. read_csv(). Đối số chính duy nhất mà nó yêu cầu là một đường dẫn phác thảo nơi tệp tồn tại

Một con đường có thể là từ trang web (i. e. , từ API hoặc kho lưu trữ GitHub)

import pandas as pd
import numpy as np 
import datetime as dt
# While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
netflix = pd.read_csv(url)
#  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
netflix

show_idtypetitledirectorcast countrydate_addedrelease_yearratingdurationlisted_indescription0s1TV Show3%NaNJoão Miguel, Bianca Comparato, Michel Gomes, R…Brazil14-Aug-202020TV-MA4 SeasonsChương trình truyền hình quốc tế, Phim truyền hình chính kịch, Truyền hình khoa học viễn tưởng &…Trong một tương lai nơi giới thượng lưu sinh sống trên một hòn đảo …1s2Movie7. 19Jorge Michel GrauDemián Bichir, Héctor Bonilla, Oscar Serrano, …Mexico23-Dec-162016TV-MA93 minPhim truyền hình, Phim quốc tếSau trận động đất kinh hoàng xảy ra ở Mexico Cit…2s3Movie23. 59Gilbert ChanTedd Chan, Stella Chung, Henley Hii, Lawrence …Singapore20-Dec-182011R78 minPhim kinh dị, Phim quốc tếKhi một tân binh được tìm thấy đã chết, đồng đội của anh…3s4Phim9Shane AckerElijah Wood, John C. Reilly, Jennifer Connelly…Hoa Kỳ16-Nov-172009PG-1380 phútHành động & Phiêu lưu, Phim độc lập, Khoa học viễn tưởng…Trong một thế giới hậu tận thế, những người máy búp bê giẻ rách hi…4s5Movie21Robert LuketicJim Sturgess, Kevin Spacey, Kate Bosworth, Aar…Hoa Kỳ01-

Ngoài ra, nếu một tệp được lưu trữ trên máy tính của bạn trong một thư mục đang hoạt động, thì đường dẫn sẽ điều chỉnh cho phù hợp. Trong quy trình này, chúng tôi có thể sử dụng đường dẫn tương đối hoặc đường dẫn đầy đủ để chỉ định đường dẫn truy xuất tệp đã cho vì hàm có thể giải mã sự khác biệt giữa hai đường dẫn mà không gặp sự cố

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix

show_idtypetitledirectorcastcountrydate_addedrelease_yearratingdurationlisted_indescription0s1TV Show3%NaNJoão Miguel, Bianca Comparato, Michel Gomes, R…Brazil14-Aug-202020TV-MA4 SeasonsChương trình truyền hình quốc tế, Phim truyền hình chính kịch, Truyền hình khoa học viễn tưởng &…Trong một tương lai nơi giới thượng lưu sinh sống trên một hòn đảo …1s2Movie7. 19Jorge Michel GrauDemián Bichir, Héctor Bonilla, Oscar Serrano, …Mexico23-Dec-162016TV-MA93 minPhim truyền hình, Phim quốc tếSau trận động đất kinh hoàng xảy ra ở Mexico Cit…2s3Movie23. 59Gilbert ChanTedd Chan, Stella Chung, Henley Hii, Lawrence …Singapore20-Dec-182011R78 minPhim kinh dị, Phim quốc tếKhi một tân binh được tìm thấy đã chết, đồng đội của anh…3s4Phim9Shane AckerElijah Wood, John C. Reilly, Jennifer Connelly…Hoa Kỳ16-Nov-172009PG80 phútHành động & Phiêu lưu, Phim độc lập, Khoa học viễn tưởng…Trong một thế giới hậu tận thế, người máy búp bê giẻ rách hi…4s5Movie21Robert LuketicJim Sturgess, Kevin Spacey, Kate Bosworth, Aar…Hoa Kỳ01-Jan- . THAT LETTLE OL’ BAND TỪ TEXASSam DunnNaNVương quốc Anh, Canada, Hoa Kỳ01-Mar-202019TV-MA90 phútPhim tài liệu, Âm nhạc & Nhạc kịchBộ phim tài liệu này đi sâu vào bí ẩn behi…

7787 hàng × 12 cột

netflix.head(5)

show_idtypetitledirectorcast countrydate_addedrelease_yearratingdurationlisted_indescription0s1TV Show3%NaNJoão Miguel, Bianca Comparato, Michel Gomes, R…Brazil14-Aug-202020TV-MA4 SeasonsChương trình truyền hình quốc tế, Phim truyền hình chính kịch, Truyền hình khoa học viễn tưởng &…Trong một tương lai nơi giới thượng lưu sinh sống trên một hòn đảo …1s2Movie7. 19Jorge Michel GrauDemián Bichir, Héctor Bonilla, Oscar Serrano, …Mexico23-Dec-162016TV-MA93 minPhim truyền hình, Phim quốc tếSau trận động đất kinh hoàng xảy ra ở Mexico Cit…2s3Movie23. 59Gilbert ChanTedd Chan, Stella Chung, Henley Hii, Lawrence …Singapore20-Dec-182011R78 minPhim kinh dị, Phim quốc tếKhi một tân binh được tìm thấy đã chết, đồng đội của anh…3s4Phim9Shane AckerElijah Wood, John C. Reilly, Jennifer Connelly…Hoa Kỳ16-Nov-172009PG-1380 phútHành động & Phiêu lưu, Phim độc lập, Khoa học viễn tưởng…Trong một thế giới hậu tận thế, những người máy búp bê giẻ rách hi…4s5Movie21Robert LuketicJim Sturgess, Kevin Spacey, Kate Bosworth, Aar…Hoa Kỳ01-

Mặc dù các tệp CSV là phổ biến nhất, nhưng có một số chức năng khác nhau có sẵn trong Pandas để đọc các tệp thuộc nhiều loại khác nhau vào một DataFrame hoạt động với cùng một quy trình chung

Loại tệpChức năng trong PandasJASONread_json()HTMLread_html()XMLread_xml()SQLread_sql()Excelread_excel()

PHƯƠNG PHÁP 2 – Tự tạo DataFrames

Mặc dù không phải là phương pháp phổ biến nhất để tạo DataFrame, nhưng bạn chắc chắn có thể tự tạo khung dữ liệu bằng cách nhập dữ liệu. Chúng ta có thể thực hiện điều này với gấu trúc. Hàm DataFrame(), lấy đối số đầu vào dữ liệu của nó và chuyển đổi nó thành DataFrame. Hàm

netflix.head(5)
4 khá mạnh ở chỗ nó có thể nhận nhiều loại dữ liệu đầu vào khác nhau

  • Không có gì - điều này sẽ tạo ra một DataFrame trống mà bạn có thể điền dữ liệu sau
    # Creating an empty DataFrame
    data = pd.DataFrame()
    print(data)
    Empty DataFrame
    Columns: []
    Index: []
  • Một từ điển ndarrays / danh sách
    # DataFrame for Pawnee City Hall
    
    Pawnee_city_hall = {
        "Personnel": ["Leslie Knope", "Ron Swanson", "Ann Perkins", "Tom Haverford", "Mark Brendanawicz", "April Ludgate", "Andy Dwyer", "Ben Wyatt", "Chris Traeger","Jerry Gergich", "Donna Meagle", "Craig Middlebrooks"],
        "Position":["Deputy Director", "Director", "Health Representative", "Administrator", "City Planner", "Assistant - Director", "Assistant - Deputy Director", "Deputy City Manager", "City Manger", "Administrator", "Office Manger", "Assistant Office Manager"]
    }
    
    Pawnee_city_hall = pd.DataFrame(Pawnee_city_hall)
    Pawnee_city_hall

    Nhân sựChức vụ0Leslie KnopePhó Giám đốc1Ron SwansonGiám đốc2Ann PerkinsĐại diện Y tế3Tom HaverfordQuản trị viên4Mark BrendanawiczNgười lập kế hoạch thành phố5April LudgateTrợ lý – Giám đốc6Andy DwyerTrợ lý –Phó Giám đốc7Ben WyattPhó Giám đốc Thành phố8Chris TraegerCity Manger9Jerry GergichQuản trị viên10Donna MeagleVăn phòng Manger11Craig MiddlebrooksTrợ lý Giám đốc Văn phòng

  • Từ điển chuỗi (mảng dữ liệu một chiều có nhãn trục)
    # Another way to create a DataFrame for Pawnee City Hall
    personnel = pd.Series(["Leslie Knope", "Ron Swanson", "Ann Perkins", "Tom Haverford", "Mark Brendanawicz", "April Ludgate", "Andy Dwyer", "Ben Wyatt", "Chris Traeger","Jerry Gergich", "Donna Meagle", "Craig Middlebrooks"])
    position = pd.Series(["Deputy Director", "Director", "Health Representative", "Administrator", "City Planner", "Assistant - Director", "Assistant - Deputy Director", "Deputy City Manager", "City Manger", "Administrator", "Office Manger", "Assistant Office Manager"])
    
    Pawnee_city_hall = pd.DataFrame({"Names":personnel, "Job":position})
    Pawnee_city_hall

    TênCông việc0Leslie KnopePhó Giám đốc1Ron SwansonGiám đốc2Ann PerkinsĐại diện Y tế3Tom HaverfordQuản trị viên4Mark BrendanawiczNhà quy hoạch thành phố5April LudgateTrợ lý – Giám đốc6Andy DwyerTrợ lý –Phó Giám đốc7Ben WyattPhó Giám đốc Thành phố8Chris TraegerCity Manger9Jerry GergichQuản trị viên10Donna MeagleVăn phòng Manger11Craig MiddlebrooksTrợ lý Giám đốc Văn phòng

  • Một danh sách các danh sách
    # Another way to create a DataFrame for Pawnee City Hall
    
    data = [
        ["Leslie Knope", "Deputy Director"], 
        ["Ron Swanson", "Director"], 
        ["Tom Haverford", "Administrator"], 
        ["April Ludgate", "Assistant-Director"], 
        ["Donna Meagle", "Office Manager"],
        ["Andy Dwyer", "Assistant - Deputy Director"], 
        ['Jerry Gergich', "Administrator"]]
    
    Pawnee_city_hall = pd.DataFrame(data, columns = ["Names", "Position"])
    Pawnee_city_hall

    TênChức vụ0Leslie KnopePhó giám đốc1Ron SwansonGiám đốc2Tom HaverfordQuản trị viên3April LudgateTrợ lý-Giám đốc4Donna MeagleQuản lý văn phòng5Andy DwyerTrợ lý – Phó giám đốc6Jerry GergichQuản trị viên

  • Một danh sách các từ điển
    # While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
    url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
    netflix = pd.read_csv(url)
    #  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
    netflix
    0

    PlayerPPGCollegeis_starting_ fiveis_starting_ fivePower ForwardPascal Siaokim23. 7Đại học New MexicoTrueTruePoint GuardFred VanVleet20. 1Whicita StateTrueTrueSmall ForwardScottie Barnes15. 1Bang FloridaTrueTrueCenterChris Boucher8. 7OregonSaiSai

    GHI CHÚ. hàm

    netflix.head(5)
    4 cũng có đối số chỉ mục và cột được sử dụng để đặt tên cho chỉ mục hàng và tiêu đề cột tương ứng

Mặc dù các loại dữ liệu giống nhau được sử dụng trong các ví dụ trên (chuỗi), DataFrames có thể bao gồm nhiều loại dữ liệu khác nhau, chẳng hạn như số nguyên, số float, danh sách, thời gian biểu, Booleans, danh sách, v.v.

# While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
netflix = pd.read_csv(url)
#  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
netflix
0

playerPPGin_starting_lineup0Lebron James28. 7True1Russell Westbrook19. 3True2Anthony Davis23. 3True3Dwight Howard5. 0False4Avery Bradley6. 9 Đúng 5 DeAndre Jordan 4. 5Sai6Carmelo Anthony13. 4Sai7Austin Reaves5. 4False8Kent Bazemore4. 1False9Nhà sư Malik12. 1True10Stanley Johnson6. 2Sai11Trevor Ariza3. 5False12Wayne Ellington6. 4Sai13Talen Horton-Tucker10. 9Sai

Khám phá một DataFrame

Vì Python là ngôn ngữ lập trình hướng đối tượng nên việc tạo DataFrame có nghĩa là tạo một đối tượng thuộc lớp DataFrame. Điều này cũng có nghĩa là có một số thuộc tính khác nhau mà chúng ta có thể khám phá và các phương pháp mà chúng ta có thể áp dụng cho DataFrame. Mặc dù chúng tôi sử dụng những thứ này thường xuyên hơn trong các tình huống khi chúng tôi không quen thuộc với tập dữ liệu (chẳng hạn như nhập dữ liệu từ đâu đó), nhưng chúng vẫn hữu ích

Bất cứ khi nào một tập dữ liệu được tải vào Python dưới dạng DataFrame, tốt nhất bạn nên xem cấu trúc của nó. Có một số thuộc tính khác nhau có thể cung cấp thông tin đó

  • Khung dữ liệu. hình dạng - trả về một bộ dữ liệu cho biết số lượng hàng và cột của DataFrame
  • Khung dữ liệu. kích thước - trả về một giá trị số nguyên của số lượng điểm dữ liệu trong tập dữ liệu
    # While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
    url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
    netflix = pd.read_csv(url)
    #  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
    netflix
    1
    # While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
    url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
    netflix = pd.read_csv(url)
    #  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
    netflix
    2

Nếu bạn định khám phá các trục của DataFrame, bạn có thể làm như vậy bằng cách yêu cầu một mảng trả về các cột được liệt kê và lập chỉ mục qua DataFrame. cột và DataFrame. mục lục. Mặt khác, có thể hữu ích khi xem xét các loại dữ liệu khác nhau tạo nên tập dữ liệu. Trong những tình huống này, DataFrame. dtypes được sử dụng

# While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
netflix = pd.read_csv(url)
#  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
netflix
3_______14show_idobjecttypeobjecttitleobjectdirectorobjectcastobjectcountryobjectdate_addobjectrelease_yearint64ratingobjectdurationobjectlisted_inobjectdescriptionobjectdtype. vật

Thao tác một DataFrame

Bây giờ chúng ta đã biết DataFrame là gì, đã đến lúc thực hiện một số công việc thực tế. Về cơ bản, điều này liên quan đến việc thao túng nó như một phần của quy trình làm sạch dữ liệu và sắp xếp dữ liệu, ngay trước khi phân tích thực tế. Giờ đây, có một số thao tác cơ bản nên có trong tiết mục của mọi người - thao tác đầu tiên là có thể truy cập và cô lập một phân đoạn nhất định của Khung dữ liệu

Để phân đoạn DataFrame, chúng tôi sử dụng DataFrame. thuộc tính loc hoặc DataFrame. thuộc tính iloc trong đó đầu vào cho biết hàng hoặc cột nào được trích xuất ([hàng. cột]). Nếu một cột cần được cách ly, thì quy trình sẽ là sử dụng dấu ngoặc vuông với tên của cột đã cho

# While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
netflix = pd.read_csv(url)
#  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
netflix
503%17. 19223. 5939421…7782Zozo7783Zubaan7784Người đàn ông Zulu ở Nhật Bản7785Món tráng miệng của Zumbo7786ZZ TOP. BAN NHẠC CÔ NHỎ ĐẾN TỪ TEXASName. tiêu đề, độ dài. 7787, loại. objectshow_ids1typeTV Showtitle3%đạo diễnNaNcastJoão Miguel, Bianca Comparato, Michel Gomes, R…countryBrazildate_added14-Aug-20release_year2020ratingTV-MAduration4 Seasonslisted_inChương trình truyền hình quốc tế, Phim truyền hình dài tập, Khoa học viễn tưởng &…mô tảTrong một tương lai nơi giới thượng lưu sinh sống trên một hòn đảo …Tên. 0, loại. vật

Trong trường hợp chúng tôi cần trích xuất nhiều hàng hoặc cột, chúng tôi sử dụng phương pháp lát cắt, bao gồm việc sử dụng một “. ” biểu thị phạm vi liên tục với phạm vi kết thúc là độc quyền (i. e. , không bao gồm) hoặc bằng cách nhập tiêu chí trong dấu ngoặc vuông theo cách tương tự như lập chỉ mục bằng Boolean với NumPy

# While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
netflix = pd.read_csv(url)
#  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
netflix
6

PlayerPPGCollegeis_starting_ fivePower ForwardPascal Siaokim23. 7Đại học New MexicoTruePoint GuardFred VanVleet20. 1Bang WhicitaTrue

# While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
netflix = pd.read_csv(url)
#  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
netflix
7

PPGCollegeis_starting_ fivePower Forward23. 7Đại học New MexicoTruePoint Guard20. 1Whicita StateTrueSmall Forward15. 1Bang FloridaTrueCenter8. 7OregonSai

# While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
netflix = pd.read_csv(url)
#  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
netflix
8

playerPPGin_starting_lineup0Lebron James28. 7True1Russell Westbrook19. 3True2Anthony Davis23. 3Đúng

Mặc dù các ví dụ trên là đơn giản, nhưng có thể làm cho nó mạnh mẽ và phức tạp hơn bằng cách sử dụng các toán tử như AND (&), OR (. ), KHÔNG BẰNG (. =) hoặc BẰNG (==). Để thiết lập điều này, hãy tạo một DataFrame mới chứa thông tin về các nhà vô địch UFC hiện tại

# While not necessarily the case, you’ll often need to load the numpy library when working with the pandas library 
url = 'https://raw.githubusercontent.com/Vibe1990/Netflix-Project/main/netflix_title.csv'
netflix = pd.read_csv(url)
#  When providing the URL pathway, this will need to be in the form of a raw string, otherwise it will result in an error
netflix
9

namesnicknameswinslossesweightclasscountry0Francis NgannouThe Predator163HeavyweightCameroon1Glover TeixeiraNone337Light HeavyweightBrazil2Israel AdesanyaThe Last Stylebender211MiddleweightNew Zealand3Kamaru UsmanThe Nigerian Nightmare191WelterweightUSA4Charles OliveiraDa Bronx318LightweightBrazil5Alex VolkanowskiThe Great231FeatherweightAustralia6Aljamain SterlingFunk Master203BantamweightUSA7Brandon MoranoThe Assassin Baby195FlyweightMexico8Julianna PenaThe Venezulean Vixen114BantamweightUSA9Valentina ShevchenkoThe Bullet223FlyweightKyrgyzstan10Rose NamajunasThug114StrawweightUSA

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix
0

tênbiệt danhthắng thuatặng cânlớp họcquốc gia1Glover TeixeiraKhông có337Nhẹ NặngBrazil

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix
1

tênbiệt danhthắng thuatrọng lượnglớp họcquốc gia1Glover TeixeiraKhông ai337Nhẹ NặngBrazil2Israel AdesanyaThe Last Stylebender211MiddleweightNew Zealand3Kamaru UsmanThe Nigerian Nightmare191WelterweightUSA4Charles OliveiraDa Bronx318LightweightBrazil5Alex VolkanowskiThe Great231FeatherweightÚc

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix
2tên biệt danhthắng thuatặng cânlớpquốc gia0Francis NgannouThe Predator163Hạng nặngCameroon7Brandon MoranoThe Assassin Baby195FlyweightMexico

Ngoài việc lọc ra một DataFrame hoặc phân đoạn nó, bạn cũng có thể sử dụng các thuộc tính

netflix.head(5)
6 và
netflix.head(5)
7 để thay đổi một giá trị cụ thể. Hãy xem một ví dụ về cách chúng ta có thể làm điều này với dữ liệu thực. Giả sử Lakers có sự thay đổi trong năm đội hình xuất phát, nơi chúng ta thay Anthony Davis bằng DeAndre Jordan. Chúng ta có thể làm điều đó với
netflix.head(5)
6 như thế này

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix
3

playerPPGin_starting_lineup0Lebron James28. 7True1Russell Westbrook19. 3True2Anthony Davis23. 3Sai3Dwight Howard5. 0False4Avery Bradley6. 9 Đúng 5 DeAndre Jordan 4. 5True6Carmelo Anthony13. 4Sai7Austin Reaves5. 4False8Kent Bazemore4. 1False9Nhà sư Malik12. 1True10Stanley Johnson6. 2Sai11Trevor Ariza3. 5False12Wayne Ellington6. 4Sai13Talen Horton-Tucker10. 9Sai

Trong một số trường hợp, có thể cần phải chèn hoặc xóa dữ liệu khỏi DataFrame. Chúng ta có thể chèn hoặc xóa một hàng bằng phương pháp

netflix.head(5)
9 và
# Creating an empty DataFrame
data = pd.DataFrame()
print(data)
0. Với phương thức append, bạn sẽ sử dụng panda. Đối tượng sê-ri khớp với kích thước của DataFrame làm đối số cho hàm. Đối với phương thức thả, tất cả những gì chúng ta cần nêu là nhãn chỉ mục/cột trong DataFrame mà chúng ta cần bỏ. Cả hai phương thức đều chứa đối số trục chỉ định thêm hoặc xóa một hàng hoặc cột

Hãy nhớ rằng chúng tôi đã tạo một Khung dữ liệu bao gồm các nhà vô địch UFC đã giữ danh hiệu vào cuối năm 2021 với biệt danh và thành tích thắng-thua của họ

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix
4

namesnicknameswinslossesweightclass0Francis NgannouThe Predator163Heavyweight1Glover TeixeiraNone337Light Heavyweight2Israel AdesanyaThe Last Stylebender211Middleweight3Kamaru UsmanThe Nigerian Nightmare191Welterweight4Charles OliveiraDa Bronx318Lightweight5Alex VolkanowskiThe Great231Featherweight6Aljamain SterlingFunk Master203Bantamweight7Brandon MoranoThe Assassin Baby195Flyweight8Julianna PenaThe Venezulean Vixen114Bantamweight9Valentina ShevchenkoThe Bullet223Flyweight10Rose NamajunasThug114Strawweight17Amanda NunesLioness215Featherweight

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix
5

namesnicknameswinslossesweightclass1Glover TeixeiraNone337Light Heavyweight2Israel AdesanyaThe Last Stylebender211Middleweight3Kamaru UsmanThe Nigerian Nightmare191Welterweight4Charles OliveiraDa Bronx318Lightweight5Alex VolkanowskiThe Great231Featherweight6Aljamain SterlingFunk Master203Bantamweight7Brandon MoranoThe Assassin Baby195Flyweight8Julianna PenaThe Venezulean Vixen114Bantamweight9Valentina ShevchenkoThe Bullet223Flyweight10Rose NamajunasThug114Strawweight

Trong trường hợp thêm một cột, quy trình sẽ tương tự như thêm một mục vào từ điển

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix
6

namesnicknameswinslossesweightclassweight_limit0Francis NgannouThe Predator163Heavyweight2651Glover TeixeiraNone337Light Heavyweight2052Israel AdesanyaThe Last Stylebender211Middleweight1853Kamaru UsmanThe Nigerian Nightmare191Welterweight1704Charles OliveiraDa Bronx318Lightweight1555Alex VolkanowskiThe Great231Featherweight1456Aljamain SterlingFunk Master203Bantamweight1357Brandon MoranoThe Assassin Baby195Flyweight1258Julianna PenaThe Venezulean Vixen114Bantamweight1359Valentina ShevchenkoThe Bullet223Flyweight12510Rose NamajunasThug114Strawweight115

Đôi khi với các bộ dữ liệu, các nhãn được sử dụng để xác định một cột có thể không mô tả chính xác thuộc tính của nó. Để thay đổi các nhãn này, chúng ta có thể sử dụng phương thức

# Creating an empty DataFrame
data = pd.DataFrame()
print(data)
1, phương thức này nhận đối số chỉ mục (chỉ định nhãn cho chỉ mục ở định dạng giống từ điển), đối số cột (chỉ định nhãn cho các cột ở định dạng giống từ điển),

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix
7

NamesNicknamesWinsLossesWeight ClassWeight Limit0Francis NgannouThe Predator163Heavyweight2651Glover TeixeiraNone337Light Heavyweight2052Israel AdesanyaThe Last Stylebender211Middleweight1853Kamaru UsmanThe Nigerian Nightmare191Welterweight1704Charles OliveiraDa Bronx318Lightweight1555Alex VolkanowskiThe Great231Featherweight1456Aljamain SterlingFunk Master203Bantamweight1357Brandon MoranoThe Assassin Baby195Flyweight1258Julianna PenaThe Venezulean Vixen114Bantamweight1359Valentina ShevchenkoThe Bullet223Flyweight12510Rose NamajunasThug114Strawweight115

Cuối cùng, có thể có một số trường hợp khi chúng ta cần định hình lại cấu trúc hiện tại của tập dữ liệu để làm cho nó phù hợp với việc phân tích dữ liệu. Mặc dù chắc chắn có thể làm lại một DataFrame khác theo cách thủ công, nhưng việc chuyển đổi nó sẽ dễ dàng hơn. Trong Pandas, có ba hàm chuyển đổi khác nhau mà chúng ta có thể sử dụng để định hình lại DataFrame

Phương pháp 1 - Xoay vòng

Quá trình chuyển đổi này về cơ bản là sử dụng DataFrame định dạng dài hơn và làm cho nó rộng hơn. Thường thì đây là kết quả của việc có một mã định danh duy nhất được lặp lại dọc theo nhiều hàng cho mỗi mục tiếp theo. Một phương pháp để lấy DataFrame mới được định dạng là sử dụng DataFrame. trục. Phương pháp này yêu cầu xác định cột dữ liệu nào sẽ được sử dụng làm chỉ mục và chỉ mục mới cũng như các giá trị cho DataFrame

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix
8

PlayerPlacing12345VoterCharles BarkleySteph CurryNikola JokicGiannis AntetokounmpoChris PaulDeMar DeRozanDoris BurkeKevin DurantGiannis AntetokounmpoSteph CurryNikola JokicDeMar DeRozanErnie JohnsonSteph CurryGiannis AntetokounmpoKevin DurantNikola JokicJoel EmbidKenny SmithSteph CurryLebron JamesChris PaulKevin DurantGiannis AntetokounmpoMichael WilbonKevin DurantGiannis AntetokounmpoNikola JokicSteph CurryDeMar DeRozan

Phương pháp

# Creating an empty DataFrame
data = pd.DataFrame()
print(data)
2 không cho phép các hàng có giá trị trùng lặp cho một cột nhất định. Nếu tính duy nhất này không được đảm bảo, một cách tiếp cận khác sẽ là sử dụng hàm
# Creating an empty DataFrame
data = pd.DataFrame()
print(data)
3 để thay thế. Cách tiếp cận này yêu cầu các đối số được sử dụng để chỉ định chỉ mục, cột và giá trị. Đặc biệt, chức năng này cũng có một đối số bổ sung “aggfunc” (mặc định là numpy. nghĩa), chuyển một hàm để tổng hợp các giá trị của DataFrame

# Assuming you've set up your notebook to have the desired working directory set

netflix = pd.read_csv(“netflix_title.csv”)
netflix
9

Đặt cầu thủSteph Curry1. 0Giannis Antetokounmpo2. 0Kevin Durant2. LebronJames 2. 0Chris Paul3. 5Nikola Jokic3. 5DeMar DeRozan5. 0Joel Embid5. 0

Phương pháp 2 — Xếp chồng/rút xếp chồng

Đôi khi, một DataFrame có thể có nhiều chỉ mục trông giống như thế này

netflix.head(5)
0

Tháng 1Tháng 2Tháng 3Tháng 4SquatSquatSquatSquatArnoldTrước225245275315Sau335355365405LarryTrước315365435455Sau495405545585

Thường rất khó để hiểu dữ liệu hoặc giải quyết nó để phân tích. Vì vậy, các chức năng như

# Creating an empty DataFrame
data = pd.DataFrame()
print(data)
4 hoặc
# Creating an empty DataFrame
data = pd.DataFrame()
print(data)
5 có thể làm cho nó dài hơn hoặc rộng hơn tương ứng

netflix.head(5)
1

Tháng 3Tháng 1Tháng 2Tháng 4ArnoldTrướcSquat275225245315SauSquat365335355405LarryTrướcSquat435315365455SauSquat545495405585

netflix.head(5)
2

Tháng 1Tháng 2Tháng 3Tháng 4SquatSquatSquatSauTrướcSauSauTrướcSauSauTrướcSauTrướcArnold335225355245365275405315Larry495315405365545435585455

Phương pháp 3 - Làm nóng chảy

Được gọi là hủy xoay vòng DataFrame, điều này hoạt động bằng cách chủ yếu chuyển đổi DataFrame định dạng rộng sang định dạng dài. Điều này thường xảy ra khi có nhiều cột hoạt động như một mã định danh cho một phân tích nhất định. Để chuyển đổi Khung dữ liệu sang định dạng dài hơn, chúng tôi sẽ cần sử dụng hàm

# Creating an empty DataFrame
data = pd.DataFrame()
print(data)
6, yêu cầu thiết lập cột nào sẽ được sử dụng làm biến định danh và các cột để "bỏ xoay vòng" để tương ứng với các giá trị cho định danh đã nói

netflix.head(5)
3

IDvariablevalue01Name Pankaj12NameLisa23NameDavid31Vai tròCEO42Vai tròBiên tập viên53Vai tròTác giả


Cho đến nay, chúng tôi mới chỉ tìm hiểu sơ bộ về DataFrames. Có nhiều hàm và phương thức khác có thể hoạt động trên các cấu trúc dữ liệu này trong Python để hiểu sâu hơn về dữ liệu của bạn. Bạn có thể tìm thấy những thứ này trong hướng dẫn tham khảo Pandas DataFrame. Tuy nhiên, một nơi tuyệt vời để bắt đầu là với khóa học Cơ bản về Pandas và NumPy trên Dataquest. Sau khi bạn biết các nguyên tắc cơ bản, hãy chuyển sang làm việc với dữ liệu bằng Python trong một số khóa học khác trong lộ trình nghề nghiệp của Nhà phân tích dữ liệu

 

 

dataframepythontutorial

Làm cách nào tôi có thể tạo DataFrame trong python?

Giới thiệu về tác giả

yêu cầu dữ liệu

Dataquest dạy thông qua các bài tập và dự án đầy thách thức thay vì các bài giảng video. Đó là cách hiệu quả nhất để học các kỹ năng bạn cần để xây dựng sự nghiệp dữ liệu của mình

Làm cách nào để tạo tập dữ liệu trong Python?

Làm cách nào để tạo Tập dữ liệu bằng Python? .
Để tạo tập dữ liệu cho bài toán phân loại với python, chúng ta sử dụng phương thức make_classification có sẵn trong thư viện sci-kit learn. .
Phương thức make_classification trả về theo mặc định, ndarrays tương ứng với biến/tính năng và mục tiêu/đầu ra

Phương pháp tạo DataFrame là gì?

Do đó, phương pháp đầu tiên và quan trọng nhất để tạo khung dữ liệu là đọc tệp csv , đây là thao tác đơn giản trong Pandas. Chúng ta chỉ cần cung cấp đường dẫn tệp cho hàm read_csv. Hàm read_csv rất linh hoạt. Nó có một số tham số cho phép sửa đổi tệp csv trong khi đọc.

Làm thế nào để tạo một khung dữ liệu giải thích với ví dụ?

Để tạo DataFrame từ lệnh của mảng/danh sách, tất cả các mảng phải có cùng độ dài. Nếu chỉ mục được thông qua thì chỉ số độ dài phải bằng độ dài của mảng. Nếu không có chỉ mục nào được truyền, thì theo mặc định, chỉ mục sẽ là phạm vi (n) trong đó n là độ dài mảng