Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Chuẩn bị cho cuộc phỏng vấn về khoa học dữ liệu bằng cách nghiên cứu danh sách đầy đủ các câu hỏi Python kèm theo câu trả lời. Bao gồm mã hóa cũng như các câu hỏi lý thuyết

Khoa học dữ liệu là một nghề nghiệp được trả lương cao và có ý nghĩa. Để tối đa hóa cơ hội thành công, các nhà khoa học dữ liệu duy trì một bộ kỹ năng phong phú như Python, SQL, R và các công cụ khác để làm việc trong các dự án khoa học dữ liệu

Một cách để cải thiện khả năng bạn đạt được công việc nhà khoa học dữ liệu là có kỹ năng kỹ thuật về khoa học dữ liệu theo yêu cầu như Python. Đây là một trong những ngôn ngữ lập trình chính được sử dụng cho khoa học dữ liệu vì nó đơn giản, dễ đọc và hỗ trợ các thư viện bên ngoài

Các nhà khoa học dữ liệu sử dụng Python để thống kê và tính toán. Nó được sử dụng rộng rãi cho Machine Learning, đặc biệt để viết các thuật toán phân tích tình cảm và Xử lý ngôn ngữ tự nhiên. Cũng có thể viết các thuật toán Python để phân tích hình ảnh y tế và giúp phát hiện và ngăn chặn gian lận

Python không phải là ngôn ngữ duy nhất được sử dụng cho khoa học dữ liệu. R là một ngôn ngữ lập trình phổ biến khác để làm việc với dữ liệu. Để tìm hiểu về sự khác biệt giữa Python và R, hãy đọc bài viết so sánh Python vs R cho Khoa học dữ liệu của chúng tôi

Python được coi là ngôn ngữ lập trình đơn giản nhưng lại có rất nhiều tính năng cần nhớ. Các thư viện hỗ trợ như gấu trúc có thể nâng cao hơn nữa khả năng của nó. Chúng tôi đã biên soạn một danh sách các câu hỏi phỏng vấn khoa học dữ liệu về python để giúp bạn ghi nhớ và thực hành mọi thứ bạn cần biết trước khi bước vào cuộc phỏng vấn

Câu hỏi phỏng vấn khoa học dữ liệu Python cơ bản

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Hãy bắt đầu với những câu hỏi phỏng vấn về khoa học dữ liệu python đơn giản nhất. Người phỏng vấn sử dụng những câu hỏi này để đánh giá kiến ​​thức của ứng viên về Python và khả năng viết mã của họ

Câu hỏi phỏng vấn khoa học dữ liệu Python không mã hóa

Viết mã Python là quan trọng, nhưng biết các nguyên tắc cơ bản của nó cũng quan trọng không kém. Thông thường các câu hỏi phỏng vấn là cơ bản. Ví dụ, các biến trong Python là gì và cách sử dụng chúng để phân tích dữ liệu

Cùng xem một số câu hỏi của ứng viên khi phỏng vấn thực tế

Câu hỏi 1. Cấu trúc dữ liệu trong Python

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi phỏng vấn khoa học dữ liệu trăn này đã được hỏi trong cuộc phỏng vấn với Walmart. Câu trả lời dễ dàng là liệt kê các cấu trúc dữ liệu trong Python. danh sách, bộ, tuple, từ điển

Thật tuyệt nếu bạn có thể mô tả các đặc điểm và tính năng của từng cấu trúc dữ liệu và giải thích sự khác biệt giữa chúng. Ví dụ: một danh sách có thể chứa nhiều loại giá trị khác nhau và có thể bị thay đổi, trong khi các bộ dữ liệu là một cặp hai giá trị bất biến

Để có câu trả lời chi tiết, hãy xem phần 'Thảo luận về Giải pháp' của câu hỏi này trên StrataScratch. Liên kết được đưa ra ở trên

Câu hỏi 2. Sự khác biệt giữa được sắp xếp (somelist) và somelist. loại()

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/kỹ thuật/2115-python-list

Câu hỏi này đến từ Đại hội đồng và nó là một chỉ báo tốt về kiến ​​thức chuyên sâu về Python của ứng viên

Câu trả lời ngắn gọn là hàm sorted(list) dẫn đến một danh sách mới với các giá trị được sắp xếp, trong khi somelist. sort() sắp xếp danh sách ban đầu tại chỗ, giữ nguyên danh tính của nó

Tham khảo phần 'Thảo luận về Giải pháp' của câu hỏi này trên nền tảng StrataScratch để biết chi tiết về sự khác biệt giữa hai chức năng

Câu hỏi số 3. Bộ nhớ được lưu trữ và truy xuất trong từ điển của Python

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/kỹ thuật/2091-python-từ điển

Từ điển trong Python lưu trữ thông tin dưới dạng cặp khóa-giá trị

person = { 'age': 24, 'firstName': 'George', 'lastName': 'Smith' }

Chúng tôi có thể truy xuất giá trị của một khóa cụ thể bằng cách sử dụng dấu ngoặc vuông - người [tuổi], sẽ truy xuất giá trị của khóa 'tuổi'. Sẵn sàng trả lời những câu hỏi tương tự. Ví dụ: để giải thích cách hiểu từ điển trong Python

Để hiểu rõ hơn cách từ điển Python lưu trữ dữ liệu, hãy xem phần 'Thảo luận giải pháp' của câu hỏi này trên nền tảng StrataScratch

Câu hỏi số 4. Xác định các giá trị còn thiếu trong tập dữ liệu

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/kỹ thuật/2254-missing-values-in-data-set

Cách dễ nhất để xác định các giá trị bị thiếu là sử dụng df. isnull() hoặc df. các hàm isna(), có sẵn cho các khung dữ liệu Pandas. Chúng ta có thể kiểm tra toàn bộ tập dữ liệu bằng lệnh df. không có giá trị. giá trị. hàm any(), trả về true nếu thiếu giá trị và false nếu không có

Để có câu trả lời chi tiết hơn, hãy xem phần 'Thảo luận về Giải pháp' trên nền tảng StrataScratch

Câu hỏi số 5. Tạo một vectơ được sắp xếp từ hai vectơ được sắp xếp

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/kỹ thuật/2104-sắp xếp-vector

Kinh nghiệm và kiến ​​thức hiểu list trong Python có thể giúp bạn dễ dàng trả lời câu hỏi này

Đầu tiên, tạo một mảng mới với kích thước kết hợp của mảng thứ nhất và thứ hai. Sau đó viết một hàm duyệt đồng thời mảng_1 và mảng_2, xác định số nào nhỏ hơn từ hai mảng và thêm nó vào mảng mới. Và tiếp tục làm điều này cho đến khi kết thúc

Bạn có thể xem mã thực tế trên phần 'Thảo luận giải pháp' trên nền tảng StrataScratch

Mã hóa câu hỏi phỏng vấn khoa học dữ liệu Python

Trong quá trình phỏng vấn xin việc, các nhà khoa học dữ liệu đầy tham vọng cũng phải giải quyết các thách thức về mã hóa. Bạn nên làm quen với việc viết mã Python

Thực hiện theo các bước sau để dễ dàng giải quyết ngay cả những câu hỏi khó nhất

1. Hiểu câu hỏi

Trước khi trả lời câu hỏi, hãy chắc chắn rằng bạn hoàn toàn hiểu nó. Ví dụ: những cột nào cần được trả lại và các chi tiết khác để giải quyết câu hỏi

Khi giải quyết các câu hỏi khó, hãy đọc chúng nhiều lần để hiểu chúng

Nếu bạn đã cố gắng hết sức để hiểu câu hỏi nhưng một số điều vẫn chưa rõ ràng, hãy hỏi người phỏng vấn để làm rõ

2. Phân tích dữ liệu

Nhìn vào (các) bảng có sẵn có thể giúp bạn đưa ra giải pháp hợp lý. Sau khi bạn hoàn toàn hiểu phần mô tả bằng lời hoặc bằng văn bản của câu hỏi, hãy nhìn vào bảng và tìm các cột chứa các giá trị mà bạn sẽ sử dụng trong phép tính của mình

Để có ý tưởng chung về các cột và giá trị chứa trong chúng, hãy xem các loại giá trị trong mỗi cột. Nó sẽ cho bạn biết nếu bạn cần chuyển đổi giá trị trong một số cột nhất định

3. Lập kế hoạch tiếp cận của bạn

Khi bạn hoàn toàn hiểu cấu trúc của câu hỏi và dữ liệu có sẵn, bạn có thể bắt đầu giải nó. Về lý thuyết, bạn có thể bắt đầu viết mã Python ngay lập tức, nhưng có một cách tiếp cận tốt hơn

Chúng tôi khuyên bạn nên suy nghĩ về vấn đề theo các bước hợp lý. Hãy nghĩ về tất cả các hoạt động và tính toán bạn cần thực hiện để đi từ dữ liệu có sẵn đến câu trả lời cuối cùng. Sau đó viết ra các bước hợp lý này và các chi tiết quan trọng cho từng bước

Các câu hỏi phỏng vấn về khoa học dữ liệu Python thường rất phức tạp. Một biện pháp khắc phục là sắp xếp những suy nghĩ của bạn trên giấy. Bằng cách này, bạn sẽ thấy việc theo dõi và viết mã cho từng bước dễ dàng hơn nhiều

4. viết mã

Hãy suy nghĩ về những tính năng của Python mà giải pháp của bạn sẽ sử dụng. Nhập tất cả các thư viện khoa học dữ liệu cần thiết như numpy và python

Nếu bạn bối rối về việc xâu chuỗi nhiều hàm lại với nhau, hãy tạo các biến để lưu trữ kết quả của mỗi lệnh gọi hàm

Bắt đầu với một giải pháp cơ bản và dần dần thêm phức tạp vào nó. Xuất mã để xem các thay đổi gia tăng có tác dụng mong muốn không

Câu hỏi số 6. dự án đắt tiền

Hãy bắt đầu danh sách các thách thức mã hóa của chúng tôi với câu hỏi đơn giản này từ Microsoft. Như mọi khi, việc tìm ra câu trả lời đúng bắt nguồn từ việc chú ý đến dữ liệu và đặt ra các bước hợp lý để giải quyết câu hỏi

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/coding/10301-đắt-dự án

Hiểu câu hỏi

Để có câu trả lời, chúng ta phải tính phần trung bình của ngân sách phân bổ cho mỗi nhân viên

Câu hỏi yêu cầu chúng tôi xuất tên dự án, ngân sách cho mỗi khách hàng và sắp xếp các giá trị số theo thứ tự tăng dần

Phân tích dữ liệu

Không thực tế khi bắt đầu viết mã Python trước khi bạn hoàn toàn hiểu dữ liệu có sẵn

Trả lời câu hỏi này yêu cầu bạn phải làm việc với hai bảng - ms_projects chứa thông tin về các dự án và ms_emp_projects lưu trữ thông tin chi tiết của từng nhân viên

Trước tiên, hãy xem loại giá trị trong mỗi cột dữ liệu có sẵn

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Nhìn vào dữ liệu thực tế trong bảng thậm chí có thể minh họa nhiều hơn và giúp bạn đưa điều này vào ngữ cảnh

bảng ms_projects

Bảng. ms_projects

idtitlebudget1Project1294982Project2324873Project3439094Project4157765Project536268

Hiển thị tất cảChuyển đổi dTypes

Cột id chứa các số để xác định từng dự án. Cột tiêu đề chứa tên của từng dự án và ngân sách chứa tổng ngân sách cho từng dự án

bảng ms_emp_projects

Bảng. ms_emp_projects

emp_idproject_id105921105932105943105954105965

Hiển thị tất cảChuyển đổi dTypes

Cột emp_id này chỉ đơn giản là một danh sách các số để xác định từng nhân viên và cột duy nhất khác được sử dụng để chỉ định dự án mà nhân viên đó được chỉ định

Lập kế hoạch tiếp cận của bạn

Để trả lời câu hỏi này, chúng ta cần tính tỷ lệ ngân sách trên nhân viên và sắp xếp danh sách cuối cùng theo thứ tự cụ thể

Vì thông tin về dự án và nhân viên được chia thành hai bảng nên chúng ta sẽ phải kết hợp chúng lại

Tiếp theo, chúng ta cần tìm số lượng công nhân cho mỗi dự án. Chúng tôi sử dụng nguyên tắc giống như trong SQL -  tạo các nhóm nhân viên làm việc trong cùng một dự án, sau đó lấy số lượng nhân viên trong mỗi nhóm

Chúng ta có thể tính tỷ lệ ngân sách trên mỗi nhân viên bằng cách chia ngân sách cho số lượng nhân viên được chỉ định cho từng dự án

Cuối cùng, chúng ta cần sắp xếp các hàng sao cho những hàng có ngân sách cao nhất cho mỗi nhân viên được ưu tiên trước, theo sau là các giá trị thấp hơn

viết mã

Hãy dịch cách tiếp cận logic của chúng ta sang mã Python

Bước 1. Kết hợp dữ liệu từ hai bảng

Chúng tôi sử dụng chức năng hợp nhất () từ thư viện Pandas, đây là giải pháp thay thế cho THAM GIA trong SQL. Nó cho phép chúng tôi kết hợp dữ liệu từ hai khung dữ liệu

Chúng tôi sử dụng từ khóa 'bật' để chỉ định thứ nguyên được chia sẻ giữa hai tập dữ liệu và từ khóa 'làm thế nào' để cho Python biết phải làm gì với các bản ghi không có giá trị khớp

import pandas as pd
import numpy as np

df=pd.merge(ms_projects, ms_emp_projects, how = 'inner',left_on = ['id'], right_on=['project_id'])

Bước 2. Tổng hợp số lượng công nhân cho mỗi dự án

Ở bước này chúng ta sử dụng hàm groupby() để tạo các nhóm nhân viên làm việc trên các sản phẩm khác nhau. Chúng ta sử dụng hàm size() để lấy tổng số nhân viên trong mỗi nhóm. Hàm này trong python hoạt động tương tự như hàm tổng hợp count() trong SQL

df1=df.groupby(['title','budget'])['emp_id'].size().reset_index()

Khi chúng tôi đã tính toán số lượng nhân viên cho mỗi nhóm, chúng tôi sử dụng reset_index() để quay lại hành vi mặc định. Theo mặc định, mỗi hàng trong khung dữ liệu được gán một chỉ mục số để xác định nó

Bước 3. Tính tỷ lệ ngân sách trên mỗi nhân viên

Chúng tôi đã tạo thuộc tính mới có tên là 'budget_emp_ratio'. Chúng tôi tính toán các giá trị cho thuộc tính này bằng cách chia các giá trị trong cột ngân sách cho tổng số nhân viên

df1['budget_emp_ratio'] = (df1['budget']/df1['emp_id']).round(0)

Lưu ý rằng ở bước trước, chúng tôi đã tổng hợp các giá trị trong cột emp_id cho từng nhóm. Vì vậy, cột emp_id hiện chứa tổng số nhân viên

Ta cũng làm tròn kết quả của phép chia này đến số nguyên gần nhất

Bước 4. Xuất giá trị theo thứ tự

Tiếp theo, chúng ta sử dụng hàm sort_values() để sắp xếp các giá trị budget_emp_ratio theo thứ tự giảm dần (từ cao nhất đến thấp nhất) và xuất chúng cũng như tên dự án trong kết quả cuối cùng

df2=df1.sort_values(by='budget_emp_ratio',ascending=False)
result = df2[["title","budget_emp_ratio"]]

Đây là giải pháp cuối cùng của chúng tôi trông như thế nào

import pandas as pd
import numpy as np

df=pd.merge(ms_projects, ms_emp_projects, how = 'inner',left_on = ['id'], right_on=['project_id'])
df1=df.groupby(['title','budget'])['emp_id'].size().reset_index()
df1['budget_emp_ratio'] = (df1['budget']/df1['emp_id']).round(0)
df2=df1.sort_values(by='budget_emp_ratio',ascending=False)
result = df2[["title","budget_emp_ratio"]]

đầu ra

Tiện ích cho phép chúng tôi chạy mã của mình, xem đầu ra và kiểm tra xem đó có phải là câu trả lời đúng không

Đầu ra của chúng tôi khớp chính xác với đầu ra dự kiến, vì vậy nó được chấp nhận là chính xác

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi số 7. Tổng chi phí của đơn đặt hàng

Một ví dụ điển hình về câu hỏi phỏng vấn khoa học dữ liệu Python trong đó ứng viên phải sử dụng các hàm từ thư viện pandas và numpy để có câu trả lời

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/coding/10183-total-chi-co-đơn-hàng

Hiểu câu hỏi

Chúng tôi được yêu cầu tính tổng các giá trị trong một cột nhất định. Một điều kiện nữa là chúng tôi tính tổng cho từng người dùng khác nhau

Mô tả câu hỏi yêu cầu chúng tôi xuất id, first_name và tổng_đơn_hàng_chi phí. Nó cũng chỉ định cách sắp xếp các bản ghi

Phân tích dữ liệu

Hãy xem nhanh các loại cột trong hai bảng. Bạn có thể cần thay đổi loại dữ liệu hoặc sử dụng các chức năng cụ thể tùy thuộc vào loại dữ liệu

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Bảng khách hàng chứa thông tin điển hình để mô tả từng khách hàng - tên, vị trí và địa chỉ liên hệ của họ

Mỗi bản ghi trong bảng đơn hàng lưu trữ thông tin như mã định danh duy nhất cho mỗi đơn hàng, mã định danh cho khách hàng đã đặt hàng, ngày đặt hàng, mô tả và chi phí

Một chi tiết quan trọng là lưu ý cột cust_id của bảng đơn đặt hàng. Giá trị của cột này tham chiếu danh tính của từng khách hàng, được lưu trữ trong cột id của bảng khách hàng

Tiếp theo, hãy xem các bảng thực tế chứa đầy dữ liệu

bảng khách hàng

Bảng. khách hàng

idfirst_namelast_namecityaddressphone_number8JohnJosephSan Francisco928-386-81647JillMichaelAustin813-297-06924WilliamDanielDenver813-368-12005HenryJacksonMiami808-601-751313EmmaIsaacMiami808-690-5201

Hiển thị tất cảChuyển đổi dTypes

bảng đơn đặt hàng

Bảng. đơn đặt hàng

idcust_idorder_dateorder_detailstotal_order_cost132019-03-04Áo khoác100232019-03-01Giày80332019-03-07Váy30472019-02-01Áo khoác25572019-03-10Giày80

Hiển thị tất cảChuyển đổi dTypes

Chúng tôi phải tổng hợp giá trị đô la của từng đơn đặt hàng của khách hàng, được lưu trữ trong cột tổng_đơn_hàng_chi phí của bảng đơn đặt hàng


Lập kế hoạch tiếp cận của bạn

Giải quyết các câu hỏi như thế này đòi hỏi sự hiểu biết thấu đáo về các khái niệm đơn giản như biến trong Python, cũng như kiến ​​thức về merge(), groupby() và các hàm khác từ thư viện pandas

Chúng tôi cần dữ liệu từ cả hai bảng để tổng hợp giá trị đơn đặt hàng của từng khách hàng. Sau đó, chúng tôi tạo một nhóm các hàng cho từng khách hàng riêng lẻ để lưu trữ thông tin về các đơn hàng được đặt theo từng đơn hàng

Cuối cùng, chúng ta cần các hàm Python tổng hợp để tính tổng các giá trị trong mỗi nhóm

Viết mã


Để thảo luận thêm về các cách tiếp cận khác nhau cho câu hỏi, hãy xem câu hỏi trên nền tảng của chúng tôi

đầu ra

Mô tả câu hỏi cho biết đầu ra phải là ba cột này, với tên của khách hàng được sắp xếp theo thứ tự bảng chữ cái

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi phỏng vấn khoa học dữ liệu Python trung cấp

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Bây giờ, hãy xem các câu hỏi phỏng vấn khoa học dữ liệu về python phức tạp hơn một chút. Bạn có thể phải trả lời những câu hỏi này nếu bạn đang phỏng vấn cho vị trí nhà phân tích dữ liệu cấp trung hoặc vai trò nhà khoa học dữ liệu tương tự

Câu hỏi số 8. Quãng đường đã đi

Đây là câu hỏi từ Lyft, nơi bạn phải tìm 10 người dùng có giá trị khoảng cách cao nhất

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/coding/10324-quãng đường đã đi

Hiểu câu hỏi

Các điều kiện cho câu hỏi phỏng vấn khoa học dữ liệu python này khá rõ ràng. Chúng tôi cần tìm những người dùng có TOP 10 quãng đường đã đi và xuất ra ba cột sau. id, tên và khoảng cách

Phân tích dữ liệu

Trong câu hỏi này, dữ liệu có sẵn được lưu trữ trong hai bảng. Chúng ta cần làm việc với dữ liệu từ cả hai bảng để đi đến câu trả lời cuối cùng

Trước tiên, hãy xem loại giá trị trong mỗi cột. Đầu tiên, là bảng lyft_rides, chứa thông tin về các chuyến đi được đặt qua ứng dụng Lyft

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Thứ hai là lyft_users, lưu trữ thông tin về người dùng ứng dụng

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers


Cột user_id của bảng lyft_rides_log xác định khách hàng đã đặt chuyến đi. Một người dùng có thể đã đặt nhiều chuyến đi, vì vậy có thể an toàn khi cho rằng cột này có thể có các giá trị trùng lặp

Id người dùng và tên của họ được lưu trữ trong bảng lyft_users

Nó sẽ giúp xem xét dữ liệu thực tế trong hai bảng này


bảng lyft_rides_log

Bảng. lyft_rides_log

iduser_id distance101893102405610328831043383105187

Hiển thị tất cảChuyển đổi dTypes


bảng lyft_users

Bảng. lyft_users

idname1Dustin Smith2Jay Ramirez3Joseph Cooke4Melinda Young5Sean Parker

Hiển thị tất cảChuyển đổi dTypes


Nhìn vào hàng thứ năm trong bảng lyft_rides_log. Giá trị user_id của nó là 1, giá trị này chúng ta có thể tra cứu trong bảng lyft_users để biết thêm thông tin về người dùng. Trong trường hợp này, chúng tôi có thể tìm ra tên đầy đủ của họ, không có trong bảng lyft_rides_log

Lập kế hoạch tiếp cận của bạn

Chia nhỏ bất kỳ thử thách mã hóa nào thành một số bước dễ quản lý có thể giúp bạn tránh được lỗi

Để có được thông tin đầy đủ về người dùng và các chuyến đi mà họ đã đặt qua ứng dụng, chúng tôi sẽ phải kết hợp hai bảng thành một

Tiếp theo, chúng ta cần chia các chuyến đi thành các nhóm, một nhóm dành cho mỗi người dùng duy nhất đã đặt chuyến đi. Sau đó, chúng tôi có thể thêm khoảng cách cho mỗi người dùng

Khi chúng tôi tổng hợp khoảng cách cho từng người dùng, thì chúng tôi cần xếp hạng các nhóm dựa trên giá trị này

Bước cuối cùng sẽ là chọn người dùng có thứ hạng TOP 10 và trả về các cột đã chỉ định

Viết mã

Để giải quyết câu hỏi này, chúng ta sẽ cần các hàm Python để kết hợp dữ liệu, nhóm các giá trị và xếp hạng các hàng dựa trên các giá trị trong một cột cụ thể

Bước 1. Kết hợp dữ liệu từ hai bảng

Chúng ta có thể sử dụng hàm merge() để kết hợp dữ liệu từ hai bảng

import pandas as pd
import numpy as np

df = pd.merge(lyft_users, lyft_rides_log, left_on='id', right_on='user_id')

Bước 2. Tổng hợp số dặm đã đi và sắp xếp dữ liệu

Chúng ta có thể sử dụng hàm groupby() để tạo các nhóm hàng dựa trên danh tính của người dùng

Chúng ta cũng cần hàm tổng hợp sum() để cộng tất cả các giá trị khoảng cách cho mỗi nhóm

Sau đó, chúng tôi sử dụng sort_values() để sắp xếp các giá trị theo thứ tự giảm dần

result = df.groupby(['user_id', 'name'])['distance'].sum().to_frame().sort_values(by = 'distance', ascending = False).reset_index()


Chúng tôi sử dụng hàm to_frame() để chuyển đổi các giá trị chuỗi thành khung dữ liệu. Điều này là cần thiết để xâu chuỗi hàm sort_values() để sắp xếp các hàng

Bước 3. Xếp hạng các hàng dựa trên khoảng cách của chúng

Tiếp theo, chúng tôi tạo cột 'xếp hạng' và sử dụng hàm rank() để tạo giá trị cho nó. Chúng tôi xác định thứ hạng dựa trên các giá trị trong cột 'khoảng cách' của mỗi hàng

________số 8

Bước 4. Trả lại đầu ra cuối cùng

Chúng tôi đặt điều kiện để chọn các giá trị có 10 giá trị cao nhất trong cột khoảng cách và xuất các cột 'user_id', 'name' và 'khoảng cách'

result[result['rank']<=10][['user_id', 'name', 'distance']]

Và giải pháp cuối cùng

import pandas as pd
import numpy as np

df=pd.merge(ms_projects, ms_emp_projects, how = 'inner',left_on = ['id'], right_on=['project_id'])
0


đầu ra

Chạy giải pháp cuối cùng của chúng tôi sẽ trả về kết quả đúng

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi số 9. Bài đăng rác

Người phỏng vấn Facebook đặt câu hỏi này để kiểm tra khả năng viết mã Python của ứng viên. Quan trọng hơn, câu hỏi này có thể hữu ích để kiểm tra khả năng chú ý đến chi tiết của họ

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/coding/10134-spam-posts

Hiểu câu hỏi

Đọc câu hỏi nhiều lần để hiểu đúng nhiệm vụ trong tay. Ngoài ra, câu hỏi giải thích những gì cấu thành một bài đăng spam và cách xác định các bài đăng đó trong dữ liệu có sẵn

Phân tích dữ liệu

Nhìn vào loại giá trị trong mỗi cột có thể giúp bạn hình thành ấn tượng đầu tiên về dữ liệu có sẵn

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

facebook_posts dường như là bảng chính chứa hầu hết thông tin, ngoại trừ dữ liệu xem

Nếu thấy cần thiết, bạn có thể truy cập dữ liệu xem cho từng bài đăng bằng cách kiểm tra chéo các giá trị post_id. Cả hai bảng chia sẻ cột này

Hãy xem trước hai bảng này với dữ liệu thực tế

bảng facebook_posts

Bảng. facebook_posts

post_idposterpost_textpost_keywordspost_date02Trận đấu với Lakers đêm qua thật tuyệt. [bóng rổ,lakers,nba]2019-01-0111 Lebron James là đẳng cấp hàng đầu. [bóng rổ,lebron_james,nba]2019-01-0222Măng tây ăn được. [măng tây,món ăn]2019-01-0131Spaghetti là món ăn Ý. [spaghetti,food]2019-01-0243Người dùng 3 không chia sẻ sở thích[#spam#]2019-01-01

Hiển thị tất cảChuyển đổi dTypes


bảng facebook_post_view

Bảng. facebook_post_views

post_idviewer_id4041425051

Hiển thị tất cảChuyển đổi dTypes



Lập kế hoạch tiếp cận của bạn

Trước tiên, bạn nên tìm các bài đăng trên facebook có thể được phân loại là spam. Theo mô tả câu hỏi, chúng ta cần xem xét các giá trị trong cột post_keywords của mỗi hàng để xem cột đó có chứa từ 'spam' hay không

Chúng tôi cũng cần một số cách để tính toán các bài đăng spam. Một cách là tạo một cột mới và lưu trữ 1 nếu bài đăng là spam và 0 nếu không phải. Để làm được điều đó, chúng ta cần áp dụng một hàm trên các giá trị trong trục 'is_spam'. Chúng ta có thể sử dụng hàm apply() từ thư viện gấu trúc để làm điều này. Phải mất một đối số, một hàm lambda gán 0 hoặc 1 tùy thuộc vào phân loại của bài đăng

Trong trường hợp bạn chưa biết, hàm Lambda chỉ là một cú pháp ngắn hơn để định nghĩa một hàm. Thường hữu ích cho các chức năng một dòng đơn giản

Tiếp theo, chúng ta có thể cộng các giá trị trong cột is_spam mới và tính tỷ lệ chia sẻ của các bài đăng đó so với tổng số bài đăng. Đó là một phép tính tỷ lệ phần trăm đơn giản, trong đó bạn chia một số cho một số khác và nhân kết quả với 100

Để tính lượt chia sẻ, chúng tôi cần lưu trữ tổng số bài đăng spam và số lượng tất cả các bài đăng. Sau khi được tính toán, chúng tôi có thể loại bỏ hai cột đó và xuất ngày và chia sẻ thư rác

Viết mã

Hãy cố gắng tự viết giải pháp trong tiện ích bên dưới


đầu ra

Câu trả lời cuối cùng phải chứa hai cột này

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi số 10. Những Thành Phố Có Những Ngôi Nhà Đắt Nhất

Đây là câu hỏi từ Zillow, một nền tảng nơi bạn có thể duyệt danh sách nhà

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/coding/10315-thành-phố-có-nhà-đắt-nhất

Hiểu câu hỏi

Tiền đề của câu hỏi phỏng vấn khoa học dữ liệu python này khá rõ ràng. Những người phỏng vấn mong bạn đưa ra những thành phố có giá nhà trung bình đắt hơn giá trung bình quốc gia

Phân tích dữ liệu

Để giải quyết câu hỏi này, chúng ta chỉ cần làm việc với một bảng chứa id danh sách, tiểu bang, thành phố và địa chỉ của bất động sản cũng như giá thị trường của nó

Trước tiên, hãy xem xét các loại giá trị trong cột

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Tên cột cho bảng này là mô tả. Sẽ an toàn khi giả định rằng cột id xác định từng danh sách thuộc tính riêng lẻ trên nền tảng. Trong khi tiểu bang, thành phố và street_address biểu thị vị trí của nó. Bảng mkt_price lưu trữ một giá trị số nguyên cho giá của tài sản tính bằng đô la

Đối với tính duy nhất của giá trị, sẽ an toàn khi cho rằng các cột thành phố và tiểu bang có thể chứa các giá trị trùng lặp. Tuy nhiên, các giá trị trong id xác định từng thuộc tính riêng lẻ và phải là duy nhất

Tiếp theo, hãy xem bảng zillow_transactions thực tế

Bảng. zillow_transactions

idstatecitystreet_addressmkt_price1NYThành phố New York66 Trout Drive4497612NYThành phố New YorkAtwater2775273NYThành phố New York58 Phố Gates2683944NYThành phố New YorkNorcross2799295NYThành phố New York337 Shore Ave. 151592

Hiển thị tất cảChuyển đổi dTypes

Nhìn vào dữ liệu có sẵn xác nhận các giả định của chúng tôi là chính xác

Lập kế hoạch tiếp cận của bạn

Bước đầu tiên là tìm giá trung bình của bất động sản ở mỗi thành phố. Mỗi bản ghi trong bảng có sẵn mô tả từng danh sách riêng lẻ, nhưng không hiển thị thông tin về giá trung bình cho từng thành phố

Tuy nhiên, chúng ta có thể sử dụng hàm mean() từ thư viện numpy để tổng hợp các danh sách riêng lẻ và tìm giá nhà trung bình cho mỗi thành phố. Chúng ta có thể làm tương tự để tìm giá trung bình của tất cả các ngôi nhà trong cả nước

Cuối cùng, chúng tôi sẽ so sánh hai mức trung bình và đưa ra các thành phố cao hơn mức trung bình quốc gia

Viết mã

Hãy thử viết giải pháp trong tiện ích bên dưới

đầu ra

Theo mô tả câu hỏi, đầu ra phải là danh sách các thành phố đáp ứng các tiêu chí

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi phỏng vấn khoa học dữ liệu Python nâng cao

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Cuối cùng, hãy xem một số ví dụ về các câu hỏi phỏng vấn khoa học dữ liệu trăn khó nhất. Bạn dễ gặp những câu hỏi này khi phỏng vấn các vị trí cấp cao

Nhìn vào dữ liệu có sẵn có thể giúp bạn hiểu những câu hỏi khó này. Trước khi cố gắng giải nó, hãy đọc tiền đề câu hỏi nhiều lần để hiểu nó. Sau đó nghĩ về giải pháp và cách dịch nó sang mã Python



Câu hỏi số 11. Những ngày ở vị trí số một

Nếu cuối cùng bạn làm việc tại Spotify, bạn có thể được giao những nhiệm vụ tương tự. Ví dụ: để thống kê về từng bài hát hoặc phân tích dữ liệu chính xác cho các công cụ đề xuất, v.v.

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/coding/10173-days-at-number-one

Hiểu câu hỏi

Trước tiên, hãy hiểu nhiệm vụ trong tầm tay. Chúng tôi được yêu cầu tìm hiểu thời gian mỗi bài hát đứng ở vị trí số một trên Spotify, cả trên bảng xếp hạng quốc tế và trong nước

Phân tích dữ liệu

Nhìn vào dữ liệu có thể giúp bạn có được suy nghĩ để giải quyết câu hỏi

Trước hết, hãy xem mô tả câu hỏi và tìm các cột chứa các giá trị quan trọng để tính toán

Đối với câu hỏi này, chúng tôi có hai bảng với nhiều cột, vì vậy có thể mất một lúc để tìm các giá trị quan trọng

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Bây giờ chúng ta đã có ý tưởng chung về các giá trị trong mỗi cột, hãy xem xét dữ liệu thực tế

Hãy chú ý đến các cột vị trí, tên theo dõi và ngày tháng trong bảng spotify_daily_ranks_2017_us

Bảng. spotify_daily_ranks_2017_us

positiontracknameartiststreamsurldate1Shape of YouEd Sheeran1467892https. //mở. spotify. com/track/7qiZfU4dY1lWllzX7mPBI32017-02-091Tài khoản ngân hàng21 Savage1176086https. //mở. spotify. com/track/5eqK0tbzUPo2SoeZsov04s2017-08-051rockstarPost Malone2072302https. //mở. spotify. com/track/7wGoVu4Dady5GV0Sv4UIsx2017-10-291Bad và Boujee (feat. Lil Uzi Vert)Migos1823391https. //mở. spotify. com/track/4Km5HrUvYTaSUfiSGPJeQR2017-01-271Despacito - RemixLuis Fonsi1480367https. //mở. spotify. com/track/5CtI0qwDJkDQGwXD1H1cLb2017-07-03

Hiển thị tất cảChuyển đổi dTypes


Các giá trị tương tự có sẵn trong bảng spotify_worldwide_daily_song_rank

Bảng. spotify_worldwide_daily_song_rank

idpositiontracknameartiststreamsurldateregion30365152Heart Won't ForgetMatoma28047https. //mở. spotify. com/track/2of2DM5LqTh7ohmmVXUKsH2017-02-04no85559160Ai đó trong đám đông - Từ nhạc phim "La La Land"Emma Stone17134https. //mở. spotify. com/track/7xE4vKvjqUTtHyJ9zi0k1q2017-02-26fr1046089175The GreatestSia10060https. //mở. spotify. com/track/7xHWNBFm6ObGEQPaUxHuKO2017-03-06cl35082425Không thể nào quênMontana thuộc Pháp46603https. //mở. spotify. com/track/3B54sVLJ402zGa6Xm4YGNe2017-10-01no7768221Bad và Boujee (feat. Lil Uzi Vert)Migos1823391https. //mở. spotify. com/track/4Km5HrUvYTaSUfiSGPJeQR2017-01-27us

Hiển thị tất cảChuyển đổi dTypes

Một điều rõ ràng - chúng ta sẽ phải làm việc với các giá trị ngày để tìm ra sự khác biệt về thời gian giữa chúng

Lập kế hoạch tiếp cận của bạn

Việc có thể chia nhỏ câu hỏi thành một vài bước dễ quản lý có thể giúp bạn viết mã không có lỗi, ngay cả khi bạn đang viết bên ngoài trình soạn thảo mã, chẳng hạn như trên bảng trắng hoặc một tờ giấy

Chúng ta phải theo dõi thứ hạng bài hát trên cả bảng xếp hạng trong nước và quốc tế, vì vậy chúng ta nên kết hợp hai bảng

Câu hỏi nêu rõ rằng chúng ta cần đếm số ngày mỗi bài hát đứng ở vị trí số một. Chúng tôi cần tìm các trường hợp khi một bản ghi đáp ứng vị trí số một cho cả Hoa Kỳ và trên toàn thế giới

Bước tiếp theo là tạo một cột để lưu trữ số ngày mà mỗi bài hát riêng lẻ giữ vị trí quán quân ở cả Hoa Kỳ và trên toàn thế giới

Cuối cùng, chúng ta phải xuất ra số ngày cao nhất mà mỗi bài hát đứng ở vị trí số một

Viết mã

Bước 1. Kết hợp dữ liệu từ bảng

Thư viện Pandas cung cấp hàm merge() kết hợp dữ liệu từ hai bảng, tương tự như THAM GIA trong SQL

import pandas as pd
import numpy as np

df=pd.merge(ms_projects, ms_emp_projects, how = 'inner',left_on = ['id'], right_on=['project_id'])
1

Chúng ta có thể sử dụng tham số thứ hai để chỉ định các cột chung giữa hai bảng

Các bảng chúng tôi đã hợp nhất có nhiều cột có tên giống hệt nhau. Khi được hợp nhất, tất cả các cột này sẽ được kết hợp thành một bảng. Vì các cột trong một bảng không được trùng tên nên chúng sẽ được gán hậu tố

Ví dụ: cột vị trí từ bảng đầu tiên (bên trái) sẽ trở thành vị trí_x, trong khi vị trí từ bảng thứ hai sẽ trở thành vị trí_y

Bước 2. Tìm bài hát thỏa mãn điều kiện

Câu hỏi này có một điều kiện rất rõ ràng - chúng ta cần tìm các trường hợp khi một bản nhạc của Hoa Kỳ giữ vị trí số 1 trên cả bảng xếp hạng spotify trong nước và quốc tế

Ta tạo biến top1 để lưu trữ tất cả kỷ lục của các bài hát số một tại Mỹ. Chúng tôi đạt được điều này bằng cách kiểm tra các giá trị của cột position_x, cột này chứa các giá trị của cột vị trí lưu trữ tất cả các bản ghi của các bài hát số một tại Hoa Kỳ

import pandas as pd
import numpy as np

df=pd.merge(ms_projects, ms_emp_projects, how = 'inner',left_on = ['id'], right_on=['project_id'])
2

Sau đó, chúng tôi lấy các giá trị trong đó giá trị của cột position_y là 1 và lưu trữ chúng dưới dạng số nguyên trong một cột mới có tên là world_position

Đừng quên giá trị position_y là giá trị của cột vị trí trong bảng xếp hạng toàn cầu

Chúng ta cần sử dụng hàm astype() để đảm bảo rằng các giá trị được lưu dưới dạng số nguyên. Sau này, chúng ta sẽ tính tổng các giá trị trong cột này

Hầu như tất cả các chức năng được đề cập ở trên là từ thư viện Pandas. Đọc bài viết này để hiểu rõ hơn về lý do và cách nhập Pandas dưới dạng pd trong Python

Bước 3. Tính số ngày

Chúng tôi sử dụng hàm groupby() để lấy các nhóm duy nhất cho mỗi giá trị trong cột tên bản nhạc. Nói cách khác, tạo một nhóm bản ghi tùy ý cho mỗi bài hát. Cuối cùng, tính tổng các giá trị trong cột world_position cho mỗi nhóm và lưu trữ nó trong cột ndays

Chúng ta sử dụng hàm transform() để tính tổng số ngày. Nó hoạt động tương tự như các hàm tổng hợp cửa sổ trong SQL. Nó tính toán tổng giá trị trong cột world_position cho mỗi nhóm và lưu trữ tổng số trong một cột mới. Không giống như các hàm tổng hợp thông thường, biến đổi không thu gọn tất cả các bản ghi thành một

import pandas as pd
import numpy as np

df=pd.merge(ms_projects, ms_emp_projects, how = 'inner',left_on = ['id'], right_on=['project_id'])
3

Bước này sẽ dễ hiểu hơn nếu chúng ta nhìn vào bảng thực tế trước khi áp dụng hàm transform() trên đó

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Python sẽ xem xét các giá trị trong cột tên bản nhạc và tách các hàng thành hai nhóm, một cho mỗi giá trị riêng biệt trong cột này. Đối với mỗi nhóm, nó sẽ cộng các giá trị trong world_position và lưu trữ chúng trong cột ndays

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers


Bước 4. Sắp xếp bài hát theo thứ tự bảng chữ cái

Chúng tôi sử dụng hàm groupby() để đảm bảo rằng chúng tôi đang làm việc với các bài hát độc đáo và hàm max() để nhận giá trị ndays cao nhất từ ​​mỗi nhóm

import pandas as pd
import numpy as np

df=pd.merge(ms_projects, ms_emp_projects, how = 'inner',left_on = ['id'], right_on=['project_id'])
4

Sau đó, chúng tôi sử dụng hàm to_frame() để chuyển đổi chuỗi ndays sang định dạng khung dữ liệu

Bước cuối cùng, chúng ta sử dụng hàm reset_index() để thiết lập lại cột chỉ mục và sắp xếp các bài hát theo thứ tự bảng chữ cái

Với điều đó, chúng tôi đi đến giải pháp cuối cùng

import pandas as pd
import numpy as np

df=pd.merge(ms_projects, ms_emp_projects, how = 'inner',left_on = ['id'], right_on=['project_id'])
5


đầu ra

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers


Câu hỏi số 12. Số lượng sản phẩm của Apple

Đây là câu hỏi của Google nhưng thí sinh phải phân tích dữ liệu sản phẩm apple

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/coding/10141-apple-product-counts

Hiểu câu hỏi

Đọc câu đầu tiên của câu hỏi phải là một dấu hiệu cho thấy chúng ta sẽ sử dụng tổng hợp để giải quyết câu hỏi này

Mô tả chứa các chi tiết và giả định quan trọng để giúp bạn tiếp cận câu hỏi đúng cách. Thí sinh được hướng dẫn cụ thể cách định dạng, sắp xếp giá trị đầu ra

Phân tích dữ liệu

Dữ liệu cần thiết để tìm câu trả lời được chia thành hai bảng

Tìm giải pháp sẽ yêu cầu một số cách để kết hợp dữ liệu trong hai bảng. Để hợp nhất chúng, chúng ta sẽ phải tìm thứ nguyên được chia sẻ - một cột chung giữa hai bảng

Hãy quét bảng và xem các loại giá trị trong mỗi cột

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Cột user_id trong cả hai bảng dường như chứa các giá trị duy nhất để xác định người dùng

Sẽ an toàn khi giả định rằng các giá trị văn bản khác (đối tượng kiểu), như event_type, event_name, location và device, có thể trùng lặp. Có khả năng chúng ta sẽ phải sắp xếp các giá trị trong cột thiết bị

bảng playbook_events

Bảng. playbook_events

user_idoccurred_atevent_typeevent_namelocationdevice69912014-06-09 18. 26. 54engagementhome_pageHoa Kỳiphone 5188512014-08-29 13. 18. 38signup_flowenter_infoNgaasus chromebook149982014-07-01 12. 47. 56tham giađăng nhậpPhápmáy tính để bàn hp pavilion81862014-05-23 10. 44. 16engagementhome_pageItalymacbook pro96262014-07-31 17. 15. 14tham giađăng nhậpNgaexus 7

Hiển thị tất cảChuyển đổi dTypes

bảng playbook_users

Bảng. playbook_users

user_idcreated_atcompany_idlanguageactivated_atstate112013-01-01 04. 41. 131tiếng Đức2013-01-01hoạt động522013-01-05 15. 30. 452866tiếng Tây Ban Nha2013-01-05hoạt động1082013-01-10 11. 04. 581848tiếng Tây Ban Nha2013-01-10hoạt động1672013-01-16 20. 40. 246709tiếng Ả Rập2013-01-16hoạt động1752013-01-16 11. 22. 224797tiếng Nga2013-01-16đang hoạt động

Hiển thị tất cảChuyển đổi dTypes


Lập kế hoạch tiếp cận của bạn

Câu hỏi này yêu cầu chúng tôi tìm người dùng có thiết bị Apple. Vì vậy, chúng tôi cần tạo một danh sách Python chứa tên của các sản phẩm Apple được chỉ định ở định dạng chuỗi chữ thường

Chúng tôi cần làm việc với dữ liệu từ cả hai khung dữ liệu, vì vậy chúng tôi cần hợp nhất hai bảng

Khi chúng tôi đã kết hợp dữ liệu từ hai bảng, chúng tôi cần chia người dùng thành các nhóm với các giá trị ngôn ngữ khác nhau và tìm số lượng người dùng trong mỗi nhóm

Bạn cũng nên đặt tên mới cho cột tổng hợp để làm rõ rằng cột này chứa tổng số người dùng cho mỗi ngôn ngữ

Sau đó, bạn cần tạo một cột mới. Giá trị của cột này sẽ là 1 cho người dùng Apple và 0 cho những người khác. Có nhiều cách để thực hiện điều này. Một là lọc khung dữ liệu để chỉ giữ những người dùng có thiết bị Apple và sau đó hợp nhất nó với danh sách tất cả người dùng

Viết mã

Cố gắng tự mình giải quyết câu hỏi


đầu ra

Câu trả lời cuối cùng phải có ba cột. Các hàng nên được sắp xếp dựa trên tổng số người dùng

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers



Câu hỏi số 13. Mặt hàng bán chạy nhất

Những người phỏng vấn tại Amazon đặt câu hỏi này để kiểm tra khả năng giải quyết các vấn đề khoa học dữ liệu phức tạp trong python của ứng viên. Giải quyết câu hỏi này đòi hỏi kỷ luật để đọc kỹ câu hỏi, chú ý đến các khái niệm của nó và chỉ bắt đầu viết mã sau khi mọi thứ rõ ràng

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Liên kết đến câu hỏi. https. //nền tảng. tầng lớp. com/coding/10172-mặt-hàng-bán-chạy

Câu hỏi nêu rõ rằng bạn không phải lo lắng về doanh số bán hàng hàng tháng từ các năm khác nhau. Nó cũng xác định các tiêu chí để tìm kiếm một sản phẩm bán chạy nhất

Phân tích dữ liệu

Chúng tôi chỉ có một bảng với nhiều cột. Đầu tiên, hãy xem xét các loại giá trị

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers


Hãy bắt đầu với cột hóa đơn, cột này có thể chứa các số duy nhất cho mỗi giao dịch

giá trị mã chứng khoán cũng có thể mô tả sản phẩm, nhưng rất có thể chúng tôi sẽ không làm việc với cột này

mô tả phải là tên hoặc mô tả ngắn về sản phẩm. Câu hỏi chỉ ra cụ thể rằng chúng ta nên trả về các giá trị trong cột này

Cột số lượng có khả năng chứa số lượng sản phẩm đã mua trong mỗi giao dịch. Chúng ta sẽ cần nhân các giá trị trong cột này với đơn giá để có được tổng giá trị của giao dịch

Ngày lập hóa đơn rất quan trọng vì giá trị ngày giờ hiển thị khi giao dịch diễn ra

Câu hỏi không hỏi chúng tôi bất cứ điều gì về khách hàng cá nhân, vì vậy cột khách hàng và quốc gia có thể bỏ qua

Bây giờ, hãy xem trước bảng online_retail với dữ liệu

Bảng. online_retail

hóa đơnnostockmãmô tảsố lượnghóa đơnngàyđơn vịgiákhách hàngidquốc gia54458621890S/6 GỖ SKITTLES TRONG TÚI COTTON32011-02-212. 9517338Vương quốc Anh54110484509BỘ 4 BÁNH CỔ TÍCH PLACEMATS32011-01-133. 29Vương quốc Anh56077222499WOODEN UNION JACK BUNTING32011-07-204. 96Vương quốc Anh55515022488BẢN CHALKBT HÌNH CHỮ NHẬT ĐÁ ĐÁ TỰ NHIÊN52011-05-313. 29Vương quốc Anh57052121625VINTAGE UNION JACK APRON32011-10-116. 9512371Thụy Sĩ

Hiển thị tất cảChuyển đổi dTypes


Lập kế hoạch tiếp cận của bạn

Giải pháp cho câu hỏi này có thể được chia thành ba bước

Ở bước đầu tiên, chúng ta cần lấy các giá trị ngày giờ trong khung dữ liệu online_retail và chuyển đổi chúng thành tháng

Sau đó, tổng hợp tổng giá thanh toán cho từng mặt hàng và lưu trữ vào một cột mới. Câu hỏi cho chúng ta biết rằng sản phẩm bán chạy nhất có nghĩa là số tiền được trả cao nhất chứ không phải đơn vị bán được. Việc tính toán tổng số tiền phải trả cho mỗi sản phẩm là hiển nhiên - nhân giá theo số lượng

Vì mỗi bản ghi trong bảng chỉ mô tả một giao dịch nên có thể giả định rằng có nhiều giao dịch cho mỗi sản phẩm. Chúng tôi cần đảm bảo có được tổng số tất cả các giao dịch

Bạn cũng sẽ cần sử dụng hàm rank() để xếp hạng các tháng theo doanh số bán hàng của họ. Cuối cùng, xuất các cột sau - tháng, mô tả và tổng_đã thanh toán

Viết mã

Cố gắng tự mình giải quyết thử thách


đầu ra

Câu trả lời phải có ba cột - tháng, mô tả mặt hàng bán chạy nhất trong tháng đó và tổng số tiền đã thanh toán cho mặt hàng đó

Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers
Câu hỏi phỏng vấn khoa học dữ liệu Python dành cho Freshers

Tóm lược

Trong bài viết này, chúng tôi đã xem xét các câu hỏi phỏng vấn phổ biến về khoa học dữ liệu Python được hỏi trong các cuộc phỏng vấn ngày hôm nay. Chúng tôi đề cập đến cả hai loại câu hỏi mã hóa và không mã hóa. Chúng ta đã xem cách kết hợp dữ liệu từ hai bảng, xếp hạng các bản ghi dựa trên các giá trị trong một cột cụ thể, chia các hàng thành các nhóm, tính tổng cho mỗi nhóm và các thao tác phổ biến khác trong Python

Nếu bạn thấy bài viết này hữu ích, bạn cũng có thể xem danh sách dài hơn về “câu hỏi phỏng vấn trăn” hoặc “câu hỏi phỏng vấn khoa học dữ liệu”

StrataScratch cho phép bạn thực hành giải quyết các câu hỏi thực tế được hỏi trong các cuộc phỏng vấn ngày hôm nay. Chúng tôi có hơn một trăm câu hỏi phỏng vấn về khoa học dữ liệu Python từ Google, Amazon, Uber, Microsoft và các công ty lớn khác trong lĩnh vực này

Bạn có thể sử dụng tiện ích Python tích hợp để viết mã và nhận phản hồi ngay lập tức. Nếu bạn gặp khó khăn, có những gợi ý để tiếp cận một câu hỏi. Thậm chí còn có một phần thảo luận nơi các chuyên gia có kinh nghiệm chia sẻ và thảo luận về các giải pháp của họ

Làm cách nào để chuẩn bị Python cho cuộc phỏng vấn khoa học dữ liệu?

Chuẩn bị Phỏng vấn Khoa học Dữ liệu. Bắt đầu từ đâu .
Nghiên cứu vai trò và công ty. .
Xem lại danh mục đầu tư của bạn và các dự án trước đây. .
Chải lên các khái niệm cơ bản. .
Thực hành kỹ năng kỹ thuật của bạn và chuẩn bị để được kiểm tra. .
Thảo luận về lương. .
Câu hỏi dành cho người phỏng vấn. .
phỏng vấn giả. .
Bài kiểm tra trực tuyến

Các câu hỏi phỏng vấn cho sinh viên mới trong khoa học dữ liệu là gì?

Câu hỏi phỏng vấn về Khoa học dữ liệu cơ bản và nâng cao .
Sự khác biệt giữa học tập có giám sát và không giám sát là gì?.
Hồi quy logistic được thực hiện như thế nào?.
Giải thích các bước lập cây quyết định. .
Làm thế nào để bạn xây dựng một mô hình rừng ngẫu nhiên?.
Làm thế nào bạn có thể tránh trang bị quá mức cho mô hình của mình?

Các câu hỏi phỏng vấn cơ bản trong Python dành cho người mới bắt đầu là gì?

Câu hỏi phỏng vấn Python dành cho người mới bắt đầu .
Trăn là gì?.
Ngôn ngữ gõ động là gì?.
Ngôn ngữ thông dịch là gì?.
PEP 8 là gì và tại sao nó quan trọng?.
Phạm vi trong Python là gì?.
danh sách và bộ dữ liệu là gì?.
Các kiểu dữ liệu tích hợp phổ biến trong Python là gì?.
Vượt qua trong Python là gì?

Những kỹ năng Python nào cần thiết cho khoa học dữ liệu?

Khoa học dữ liệu với các kỹ năng cốt lõi của Python .
Món ăn. Sử dụng Máy tính xách tay Jupyter. .
Món ăn. Khám phá tập dữ liệu của bạn với Pandas. .
Món ăn. Đọc và ghi tệp CSV. .
Món ăn. Làm việc với dữ liệu JSON trong Python. .
Món ăn. Khung dữ liệu gấu trúc 101. .
Món ăn. Vẽ đồ thị Python với Matplotlib. .
Món ăn. Dọn dẹp dữ liệu với gấu trúc và NumPy. .
Món ăn