Nhật ký Python #2 - Biệt giam trong các Cơ sở giam giữ

Feb 01 2023
Phần thứ hai của Nhật ký Python, một sê-ri mà tôi trình bày chi tiết những trải nghiệm, suy nghĩ và nỗ lực học Python của mình. Trừ khi bạn đã sống dưới một tảng đá trong thập kỷ qua, Python là ngôn ngữ lập trình đã trở thành ngành khoa học dữ liệu chủ lực.

Phần thứ hai của Nhật ký Python, một sê-ri mà tôi trình bày chi tiết những trải nghiệm, suy nghĩ và nỗ lực học Python của mình.

Ảnh của Grant Durr trên Bapt

Trừ khi bạn đã sống dưới một tảng đá trong thập kỷ qua, Python là ngôn ngữ lập trình đã trở thành ngành khoa học dữ liệu chủ lực. Học Python là điều mà tôi đã có trong danh sách việc cần làm của mình một thời gian và cuối cùng tôi cũng có thời gian rảnh để dành cho việc học nó, nhờ công việc giảng dạy bán thời gian của tôi ở Tây Ban Nha!

Trong những năm gần đây, các nhà tuyển dụng đã bắt đầu sử dụng Python với số lượng ngày càng tăng. Tôi đã đọc rằng, so với R, Python phù hợp hơn cho các ứng dụng web quy mô lớn , học sâu và học máy . Mối quan tâm của tôi đối với máy học và mong muốn chung của tôi là học các kỹ thuật và công nghệ mới khiến cho việc biết một chút về Python không chỉ hấp dẫn mà còn cần thiết!

Lưu ý: Vào cuối ngày, giả sử rằng một người hoàn toàn có quyền tự do lựa chọn lập trình, thì câu trả lời thường rất đơn giản: không thành vấn đề! Công cụ chỉ là công cụ , vì vậy chúng nên được lựa chọn một cách thận trọng tùy thuộc vào mục đích và tình huống.

Trong dự án này, tôi đã thực hành các khái niệm sau:

  • Tạo Sổ ghi chép Jupyter
  • Nhập tệp .csv
  • Cài đặt và nhập các gói (Pandas, Numpy, Matplotlib, Seaborn)
  • Làm sạch dữ liệu
  • Thao tác dữ liệu
  • Chạy phân tích thống kê suy luận cơ bản
  • Tổng hợp dữ liệu
  • Trực quan hóa dữ liệu (biểu đồ, biểu đồ thanh, biểu đồ hộp)
  • Tạo nhận xét
  • Đặt định dạng hiển thị dữ liệu
  • Dữ liệu tập hợp con

Tôi đã tìm thấy dữ liệu về việc biệt giam trong các cơ sở giam giữ ở Hoa Kỳ từ Data is Plural , một bản tin hàng tuần với mục tiêu tìm các bộ dữ liệu thú vị và hữu ích từ khắp nơi trên Internet.

Thao tác dữ liệu

Ở đây, tôi đã thao tác nhanh với dữ liệu hiện có bằng cách lần đầu tiên tìm số lượng quốc tịch của các tù nhân trong 20 quốc gia hàng đầu. Sau đó, tôi đã chuyển đổi những con số đó thành tỷ lệ phần trăm để có cái nhìn rõ hơn về mức độ phổ biến của một số quốc tịch nhất định. Ví dụ, quốc tịch Mexico chiếm hơn một phần ba số tù nhân trong cơ sở giam giữ trong bộ dữ liệu này! Đối với tôi, tỷ lệ quốc tịch Jamaica cũng nổi bật (3,11%). Sau đó, tôi đã tạo một biểu đồ thanh nhanh trực quan hóa thông tin tương tự.

Tổng hợp dữ liệu

Hình ảnh bên dưới trình bày chi tiết số liệu thống kê tóm tắt về biến quan tâm 'days_solitary' của chúng tôi. Thời gian biệt giam trung bình là 32,72 ngày. Trung bình là 20 ngày. Bởi vì giá trị trung bình và giá trị trung vị rất khác nhau nên có khả năng xảy ra phân phối lệch phải. Nói cách khác, có một số tù nhân dành nhiều thời gian trong phòng biệt giam đang kéo lượng thời gian trung bình tăng lên. Sự lây lan kéo dài từ 0 ngày đến 781 ngày trong phòng biệt giam.

Thống kê tóm tắt cho 'days_solitary'

Trực quan hóa dữ liệu (biểu đồ, biểu đồ thanh, biểu đồ hộp)

Hình ảnh trực quan đầu tiên mà chúng tôi có ở đây là một biểu đồ, về cơ bản là một biểu diễn bằng hình ảnh của các số liệu thống kê tóm tắt ở trên. Phân bố của biến 'ngày_solitary' bị lệch phải, nghĩa là có nhiều tù nhân bị biệt giam trong thời gian ngắn, trong khi có một số tù nhân bị biệt giam trong thời gian dài. Vì phân phối bị lệch phải, điều đó có nghĩa là giá trị trung bình lớn hơn giá trị trung bình, bởi vì các giá trị ngoại lệ đang kéo giá trị trung bình lên.

Hình ảnh thứ hai là biểu đồ mật độ, về cơ bản làm mịn biểu đồ và hiển thị mật độ tương đối của số ngày bị biệt giam. Hình ảnh thứ ba chồng lên hình ảnh thứ hai trên hình ảnh đầu tiên để chúng có thể được so sánh dễ dàng.

Dưới đây là biểu đồ mô tả số lượng vì những lý do khác nhau mà một tù nhân bị biệt giam. Chúng tôi thấy rằng lý do kỷ luật chiếm phần lớn trong số các lý do, trong khi 'Giam giữ bảo vệ: An toàn cho người bị giam giữ khác' là lý do cao thứ hai. Tôi thấy vô số lý do y tế khiến một người nào đó có thể bị biệt giam.

Dưới đây là biểu đồ tương tự được tạo bằng Seaborn mô tả số lượng tù nhân ở mỗi tiểu bang. Chúng tôi thấy rằng California có nhiều tù nhân nhất trong bộ dữ liệu, tiếp theo là Texas, Arizona và Georgia. Sự khác biệt duy nhất giữa hai biểu đồ vạch là biểu đồ bên trái có chủ đề tô màu mặc định trong khi biểu đồ bên phải có chủ đề tô màu tùy chỉnh. Ở đây, mục tiêu là làm quen với các chủ đề mà tôi có thể tạo với Seaborn! Theo nguyên tắc chung, tôi cố gắng sử dụng các bảng màu thân thiện với người mù màu để tác phẩm của tôi có thể dễ tiếp cận hơn.

Trái: Chủ đề mặc định, Phải: Chủ đề tùy chỉnh

Trong biểu đồ hình hộp bên dưới, tôi đã sử dụng Seaborn để nhóm các tù nhân theo tiểu bang mà họ bị giam giữ với mục đích xem liệu số ngày bị biệt giam có thay đổi theo tiểu bang hay không. Có thể các bang khác nhau có luật riêng biệt liên quan đến khoảng thời gian mà một tù nhân có thể bị biệt giam.

Phản ánh chung:

Sau Nhật ký Python cuối cùng, tôi muốn ngay lập tức chuyển sang phân tích không gian địa lý hoặc hồi quy tuyến tính, nhưng tôi nhận ra rằng sẽ tốt hơn nếu trở nên thoải mái hơn với các khái niệm cơ bản của Python trước khi chuyển sang thứ gì đó phức tạp hơn.

Tôi rất hào hứng khi được khám phá thế giới khoa học dữ liệu và tìm hiểu tất cả các thư viện và kỹ thuật thú vị. Nhưng tôi nhanh chóng nhận ra rằng trước khi có thể nghĩ đến việc sử dụng những thư viện đó, tôi cần phải hiểu rõ những điều cơ bản. Khi nói đến khoa học dữ liệu, giống như nhiều lĩnh vực STEM, việc hiểu những điều cơ bản giống như nền móng của một ngôi nhà. Nếu nền móng yếu, phần còn lại của ngôi nhà sẽ sụp đổ. Nhưng với một nền tảng vững chắc, bạn có thể xây dựng bất cứ điều gì.

Thật sự rất bổ ích khi làm việc với tập dữ liệu này vì tất cả những cách tiềm năng mà nó có thể được sử dụng để giúp đỡ mọi người và cộng đồng. Khoa học dữ liệu có thể là một công cụ mạnh mẽ để thúc đẩy lợi ích xã hội, đặc biệt là khi phân tích các vấn đề phức tạp như biệt giam trong các cơ sở giam giữ. Bằng cách sử dụng các kỹ thuật như máy học và phân tích thống kê, các nhà khoa học dữ liệu có thể phát hiện ra các mẫu và thông tin chi tiết có thể không được chú ý. Ví dụ: trong bối cảnh biệt giam, khoa học dữ liệu có thể được sử dụng để phân tích một lượng lớn dữ liệu về các điều kiện và kết quả của hoạt động này, chẳng hạn như khoảng thời gian các cá nhân bị biệt giam, tác động đối với sức khỏe tâm thần của họ và mối tương quan giữa biệt giam và tái phạm. Kết quả là, thông tin này có thể được sử dụng để cung cấp thông tin cho các nỗ lực vận động chính sách và chính sách nhằm giảm việc sử dụng biện pháp biệt giam và cải thiện điều kiện cho những người bị giam giữ. Ngoài ra, khoa học dữ liệu cũng có thể được sử dụng để theo dõi và đánh giá hiệu quả của những nỗ lực này theo thời gian.

Bây giờ tôi đang tìm kiếm công việc khoa học dữ liệu cấp đầu vào đầu tiên của mình, tôi biết rằng các kỹ năng tôi đã thực hành từ việc tập trung vào kiến ​​thức cơ bản về Python sẽ giúp ích cho tôi!

Những gì tôi muốn học cho Python Diaries #3:

Lần tới, tôi muốn nâng kỹ năng Python của mình lên một tầm cao mới bằng cách sửa đổi dữ liệu không gian địa lý hoặc chạy hồi quy tuyến tính đơn giản .

Muốn xem mã của tôi? → GitHub

Bạn muốn xem kinh nghiệm trong quá khứ của tôi? → LinkedIn