Posted on Leave a comment

Chuyện nghề BI #001

Một bài Post trên group Data Analytics and Business Intelligence Vietnam

Khi mới bước chân vào ngành dữ liệu, chúng ta thường không khỏi hoang mang, một là vì thiếu thông tin, chưa hiểu rõ về ngành, hai là vì có quá nhiều luồng thông tin, không biết nên tin bên nào.

Thấu hiểu sự băn khoăn này, Datapot cùng các bạn tháo gỡ mốt số lầm tưởng, thắc mắc khi bước vào ngành dữ liệu nhé!

Chia sẻ một chút về tác giả bài viết.

Context: Mình làm nhiều role trong cả vòng đời dữ liệu: Data Clerk, Data Analyst/BI, DBA, Solution Architect, Department Manager (Data Managment and Analytics), Consultant, Trainer…(Mình không nhảy việc nhiều, thay đổi theo quá trình phát triển công việc)

Mình note lại một số quan điểm của mình (mình đã từng lầm tưởng hoặc đang phổ biến):

1. Làm dữ liệu phải giỏi siêu nhân về toán, thần thánh về lập trình hoặc công cụ, hiểu rất sâu về business?

Quan điểm cá nhân: Bạn code tốt hơn một ông thuần về business, hiểu về business hơn một ông dev bình thường, hiểu về toán tốt hơn cả 2 ông kia (cũng chưa biết đâu vì nhiều dev sịn mình biết học sư phạm toán với toán ứng dụng ra đấy :-s ). bạn viết truy vấn SQL có thể tốt hơn Dev vì bạn hiểu về business nhưng thử viết một stored produce xử lý một tác vụ của phần mềm xem có toang không đã nhé.

2. Bạn không cần học SQL, lập trình?

Mấy cái đó chỉ dành cho các công ty nghèo không có tiền mua tool xịn như Power BI, Alteryx…. Còn làm gì có tool làm được hết rồi, cần thì request IT xử lý..Quan điểm cá nhân: Tool toy rất tiện và bản thân mình cũng ủng hộ tool nếu có thể. Tuy nhiên tool nào cũng có mặt hạn chế. Thử vào một doanh nghiệp và cần trích xuất dữ liệu trực tiếp với lượng dữ liệu từ vừa đến lớn với logic phức tạp thì SQL sẽ là cứu cánh để bạn triển khai được nhanh, gọn và mạch lạc hơn. Và mình học và làm việc sâu với SQL không phải vì mình “nghèo” mà vì tính phổ biến, khả năng tùy biến của ngôn ngữ và ưu điểm tuyệt đối của nó trong một số hoàn cảnh cụ thể. Ít nhất mình có quyền lựa chọn thay vì chết vì phụ thuộc tool toy.

3. Mình chỉ cần học về tư duy là đủ rồi, chứ công cụ không quan trọng?

Quan điểm cá nhân: Việc đầu tiên khi người ta học làm bếp là học cầm con dao sơ chế miếng thịt, cá như thế nào. Với một chief có thể nấu được bữa ăn từ bất cứ những công cụ gì họ có trong tay. Họ làm được vì họ từng sử dụng qua rất nhiều công cụ chứ không phải họ chỉ ngồi học lý thuyết về ẩm thực. Trước đây mình đã từng viết 1 bài về Law of the Instrument: “if all you have is a hammer, everything looks like a nail”. Quá trình sử dụng công cụ để giải quyết vấn đề giúp bạn phát triển tư duy, nếu khả năng sử dụng công cụ của bạn bị giới hạn thì rất có thể bạn sẽ dẫn về số 2, phụ thuộc vào một công cụ nào đó vì không còn quyền lựa chọn. Khá hài hước khi tư tưởng coi thường công cụ nhưng xét mặt nào đó lại bị phụ thuộc vào công cụ. :))

4. Mình đã luyện xong 1001 đường tịch tà kiếm phổ, sẵn sàng trở thành siêu nhân trong ngành dữ liệu?

Quan điểm cá nhân: Bạn có thể chỉ cần thuần Excel vẫn kiếm được công việc chính thức trong ngành dữ liệu với mức lương tính bằng nghìn USD (người thật việc thật). Nhưng đa phần các công việc trong ngành dữ liệu đều cần tìm hiểu thêm rất nhiều thứ khác, tech stack khác với dự án trước đây, domain khác với domain đã biết, nghiệp vụ hoặc luật lá thay đổi. Bạn sẽ tìm hiểu đủ thứ từ marketing đến UI-UX design, human heuristics…. Giữ tư duy mở và thái độ sẵn sàng học bất cứ cái gì công việc yêu cầu. Khả năng học và vận dụng nhanh mới giúp bạn sống sót và phát triển tốt trong ngành này.

5. Làm BI/DA là phải làm dashboard đẹp, kể được câu chuyện về dữ liệu, phải có 1001 nghiêm quy giới luật về information design cần tuân thủ?

Quan điểm cá nhân: Bạn cần phải làm được những điều trên nhưng chỉ là một phần rất nhỏ trong công việc, nếu bạn tôn thờ nó quá thì nhiều khả năng bạn làm consultant hơn là làm in-house cho doanh nghiệp. Đào bới được dữ liệu xem nó nằm đâu trong hệ thống, thống nhất được với các đơn vị xem dữ liệu nào chính xác đã hộc máu rồi. Nhiều stakeholders chỉ cần một cái pivot table hay chart đơn giản là quá đủ cho nhu cầu của họ. Quan trọng là context và mục đích sử dụng và làm sao tối đa được giá trị cho stakeholders.

Tham khảo bài viết: 5 Lưu ý để trực quan hóa dữ liệu hiệu quả.

Tạm thế đã, các bạn ủng hộ đi rồi mình viết tiếp. :))

Posted on Leave a comment

Tìm hiểu những gì để sử dụng Power BI như một Data Analyst?

Power BI không chỉ có những mẫu báo cáo bắt mắt. Để khai thác hết sức mạnh của tool BI này cũng như sử dụng Power BI một cách bài bản như một Data Analyst, hãy tìm hiểu những nội dung liên quan đến Data Model sau.

Star schema

Star Schema là một cách tiếp cận việc mô hình hóa dữ liệu được áp dụng rộng rãi cho các cơ sở dữ liệu quan hệ. Star Schema yêu cầu người dùng phân loại các bảng dữ liệu thành dimension hoặc fact.

Đây là một nội dung cốt lõi trong Data Modelling mà nếu các bạn không chú ý hoặc triển khai tốt thì sẽ gây ra nhiều rắc rối trong quá trình làm việc sau này.

Nếu bạn chưa bao giờ tìm hiểu về Star schema, tài liệu tham khảo dưới đây từ Power BI sẽ giúp bạn hiểu rõ về khái niệm cơ bản & vai trò của Star schema khi sử dụng Power BI.

https://docs.microsoft.com/vi-vn/power-bi/guidance/star-schema

Nếu bạn muốn tìm hiểu sâu hơn về Star Schema, tham khảo cuốn Star Schema A Complete Reference. https://amzn.to/35imkha

Data Model Size 

Sau khi đã bắt đầu với Star Schema, thì lượng dữ liệu của chúng ta ngày càng tăng lên, đến một mức nhất định, việc này sẽ ảnh hưởng đến quá trình vận hành. Hầu hết chúng ta đều muốn lưu càng nhiều dữ liệu càng tốt, với tâm lý biết đâu sẽ có lúc dùng đến. Tuy nhiên, chúng ta cần thành thật trả lời, những dữ liệu nào là thật sự cần thiết và dữ liệu nào không?

Dưới đây là một tài liệu về các kỹ thuật để giảm lượng dữ liệu nhập vào, từ đó giúp cho Mô hình dữ liệu của bạn gọn gàng và hiệu quả hơn.

https://docs.microsoft.com/vi-vn/power-bi/guidance/import-modeling-data-reduction

Khi thực hiện 1 dự án và sử dụng Tabular Editor, chúng tôi phát hiện ra có đến hơn 2000 cột dữ liệu không sử dụng đến trong Data Model. Hãy thử vào https://tabulareditor.com/ và tìm hiểu chức năng Best Practice Analyzer.

Direct Query

Mọi người thường sử dụng tính năng này vì sự tiện dụng. Tuy nhiên, Direct Query cũng gây ra những trục trặc trong quá trình sử dụng.

Tham khảo tài liệu hướng dẫn về Direct Query Model https://docs.microsoft.com/vi-vn/power-bi/guidance/directquery-model-guidance

Hãy đảm bảo mọi thứ gọn gàng và chỉ import những dữ liệu bạn thật sự cần. Nếu bạn chọn 1 bảng dữ liệu 1 triệu dòng, thì việc gặp lỗi phát sinh hay vận hành chậm không có gì là lạ.

DAX

Mội nội cơ bản bạn có thể tham khảo – Hướng dẫn sử dụng biến với DAX https://docs.microsoft.com/vi-vn/power-bi/guidance/dax-variables

(Hãy đọc thêm những nội dung hướng dẫn khác liên quan đến DAX từ Power BI vì chúng sẽ hữu ích trong công việc của bạn).

Bạn cũng có thể tham khảo sách Definitive Guide to DAX: https://amzn.to/3kgMyFf

Nguồn tham khảo: Guy In a Cube

Với các bạn mới bắt đầu tìm hiểu Power BI & mong muốn ứng dụng Power BI trong công việc, hãy tham khảo khóa học Power BI & Analytical Thinking từ Datapot.

Được thiết kế và giảng dạy bởi các chuyên gia giàu kinh nghiệm làm việc và đào tạo trong ngành dữ liệu, được triển khai tại các doanh nghiệp như Unilever, SHB, MB Life Ageas,.., khóa học sẽ mang đến cho bạn những kiến thức và kỹ năng thực tiễn nhất.

Posted on Leave a comment

Từ điển biểu diễn dữ liệu

Có rất nhiều cách biểu diễn dữ liệu, chúng ta nên chọn cách nào? Một gợi ý đó chính là dựa trên mối quan hệ của dữ liệu, chúng ta có thể lựa chọn biểu đồ phù hợp. Hãy cùng tìm hiểu 1 số mối quan hệ phổ biến dưới đây nhé.

Devitation (Độ lệch)

Nhấn mạnh sự biến đổi (tăng/giảm) từ một điểm tham chiếu cố định. Điểm tham chiếu thường sẽ là mức 0, trong một số trường hợp có thể là KPI hoặc giá trị trung bình. Cũng có thể thể hiện thái độ (tích cực, tiêu cực, trung lực) trong một số khảo sát.

Correlation (Tương quan)

Thể hiện mối quan hệ giữa 2 hoặc nhiều biến. Tuy nhiên, nếu không note rõ, người đọc thường nhầm lẫn thành mối quan hệ nhân quả (sự thay đổi của biến này tạo ra sự biến đổi của biến khác).

Ranking (Xếp hạng)

Được sử dụng khi vị trí/thứ hạng của một đối tượng trong một danh sách có trật tự quan trọng hơn giá trị tuyệt đối. Có thể highlight các thứ hạng quan trọng.

Distribution (Phân phối)

Thể hiện tần suất xuất hiện của các giá trị trong một dataset. Hình dạng của phân phối cũng giúp ta thấy được sự không đồng nhất của dữ liệu.

Change over time (Sự thay đổi theo thời gian)

Nhấn mạnh vào xu hướng. Đơn vị thời gian có thể là giờ trong ngày cho đến thập kỷ hay thế kỷ, chính vì vậy chọn khoảng thời gian và đơn vị thời gian phù hợp sẽ giúp người xem dễ dàng theo dõi.

Part-to-whole (Thành phần – Tổng thể)

Thể hiện 1 đối tượng có thể chia thành (bao gồm) những phần nào và tỉ lệ giữa các phần. Nếu chỉ quan tâm đến so sánh giá trị, có thể sử dụng các biểu đồ thể hiện độ lớn.

Magnitude (Độ lớn)

So sánh các giá trị, có thể là giá trị tuyệt đối (giá trị chính xác) hoặc tương đối (so sánh xem giá trị nào lớn hơn). Thường sẽ so sánh các giá trị đếm được (doanh thu, số người,…) hơn là giá trị phần trăm.

Bài viết được dịch từ nguồn Tài liệu tham khảo trong khóa học Power BI & Analytical Thinking.

Khóa học cung cấp các nội dung về ứng dụng tư duy phân tích trong lĩnh vực Data Analytics:

▪️ Tư duy phân tích và suy luận logic trong việc giải quyết các vấn đề, các bài toán của doanh nghiệp bằng dữ liệu.

▪️ Các kỹ năng về đặt câu hỏi, tìm kiếm nguyên nhân gốc rễ, phân tách các vấn đề khi gặp một yêu cầu.

▪️ Design thinking: các nguyên tắc cơ bản khi thiết kế dashboard chuyên nghiệp, lựa chọn biểu đồ, màu sắc và bố cục phù hợp với mục tiêu.

▪️ Ứng dụng phân tích với Power BI của Microsoft – công cụ BI hàng đầu được nhiều doanh nghiệp đang sử dụng (Unilever, Techcombank,…)

Posted on Leave a comment

Data Visualization: 5 lưu ý để trực quan hóa dữ liệu hiệu quả

1. Chọn đúng loại biểu đồ

Điều này có vẻ hiển nhiên, tuy nhiên chúng ta thường chọn biểu đồ theo thói quen hoặc cảm tính.

Chúng ta cần nhớ rằng “form follows function” (chức năng đi trước, trình bày đi sau) – mục đích của việc trực quan hóa luôn cần được cân nhắc đầu tiên.

Bạn có thể tự hỏi mục đích của bạn là so sánh các giá trị, thể hiện xu hướng, tìm hiểu về sự phân phối hay mối quan hệ giữa các biến? Từ đó bạn có thể chọn 1 hoặc 1 số biểu đồ phù hợp để thể hiện mục đích này.

Với ví dụ dưới đây ta có dataset về tỉ lệ lỗi của các loại sản phẩm. Chúng ta đang cần tìm ra loại sản phẩm có tỉ lệ lỗi cao (parts per million). Biểu đồ cột như hình bên phải là cách đơn giản và hiệu quả để biểu diễn điều này. Bên cạnh đó, tree maps và packed bubble charts như hình bên trái rối mắt và khiến người đọc gặp khó khăn trong việc so sánh.

Image for post
Chọn biểu đồ dựa trên mục đích biểu diễn & chức năng

2. Không phải tất cả các giá trị (data points) đều quan trọng như nhau

Bạn không nên ném toàn bộ dataset vào một biểu đồ, hãy phân tích trước để biểu diễn/ highlight những thông tin quan trọng sao cho người xem dễ nắm bắt.

Image for post

Biểu đồ này thể hiện chuỗi giá trị theo thời gian. với đường A A’, ta thấy được 1 thời điểm có sự thay đổi về chu kỳ và cường độ, liên quan đến sự sụt giảm mạnh vài chu kỳ sau đó. Bạn thấy biểu đồ nào giúp ta phát hiện điều này tốt hơn?

Biểu đồ phía trên chỉ đơn thuần trực quan hóa toàn bộ dataset, trong khi biểu đồ dưới giúp người xem dễ dàng phát hiện các điểm đặc biệt hơn.

Một ví dụ khác là khi muốn biểu diễn tổng doanh thu của năm theo ID dự án (với 41 dự án khác nhau). Biểu đồ bên trái biểu diễn tất cả 41 dự án nên khá lộn xộn, trong khi biểu đồ bên phải biểu diễn 5 dự án có doanh thu lớn nhất và gộp các dự án còn lại vào nhóm “others”, một cách gọn gàng và hợp lý hơn.

Tuy nhiên cách lọc này có thể khiến tổng không bằng 100% và gây hiểu nhầm. Nên cần đảm bảo khi nhóm các giá trị còn lại là tổng luôn bằng 100% hoặc giải thích rõ tại sao 1 số giá trị không được tính đến.

Image for post
Loại bỏ các giá trị gây nhiễu

3. Biểu đồ nói thật hay nói dối?

Việc trực quan hóa nên giúp biểu diễn thực tế về số liệu, thay vì làm sai lệch hoặc gây nhầm lẫn cho người xem. Việc trình bày biểu đồ rất quan trọng để tạo nên một khung tham chiếu cho người xem.

Trong ví dụ dưới đây, sản lượng của một quy trình tăng từ 56% lên 67% trong vòng 6 tháng. Biểu đồ phía bên trái đang cố tình phóng đại sự tăng trưởng này bằng cách để gốc của trục y ở giá trị 50%. Biểu đồ bên phải biểu diễn chính xác hơn khi trục y bắt đầu ở giá trị 0 và có kèm theo đường mục tiêu để so sánh.

Image for post
Tạo khung tham chiếu, không gây nhầm lẫn cho người xem

4. Sử dụng màu sắc hợp lý

Việc sử dụng màu sắc nên giúp thêm thông tin hoặc highlight những điểm quan trọng trong biểu đồ. Trong các trường hợp khác, màu sắc thường thừa thãi và gây rối mắt.

Image for post

5. Đơn giản và hiệu quả

Các công cụ trực quan hóa hiện nay giúp chúng ta tạo ra những biểu đồ đẹp mắt và phức tạp với chỉ vài cái click chuột. Tuy nhiên, quá nhiều yếu tố về thẩm mỹ có thể làm người xem sao nhãng khỏi thông điệp chính của biểu đồ. Less is more.

Image for post

Bên cạnh việc sử dụng công cụ, thì tư duy phân tích và thiết kế cũng rất quan trọng trong việc xây dựng báo cáo.

Nguồn: http://towardsdatascience.com/

Khóa học Power BI & Analytical Thinking mang đến các nội dung về ứng dụng Tư duy phân tích, thiết kế báo cáo cũng như ứng dụng Power BI. Khóa học đã được Datapot triển khai tại các doanh nghiệp như Unilever, SHB, MB Ageas Life.

Posted on Leave a comment

10 Nội dung về SQL bạn nên biết khi tham gia phỏng vấn trong ngành dữ liệu (Phần 2)

SQL ngày càng quan trọng trong doanh nghiệp với rất nhiều ứng dụng. Tuy nhiên, với các buổi phỏng vấn trong ngành dữ liệu, sẽ có một số nội dung quan trọng mà hầu hết các công ty đều kiểm tra. Dưới đây là 10 nội dung xuất hiện nhiều nhất vì có tính ứng dụng cao trong thực tế công việc.

Đây cũng là những nội dung bạn nên ôn tập để chuẩn bị cho buổi phỏng vấn sắp tới. (Xem phần 1 tại đây)

6. Subqueries

Subquery, hay inner query, là truy vấn nằm trong 1 truy vấn khác với mệnh đề WHERE. Subquery có thể ứng dụng theo nhiều cách khác nhau để giải quyết những vấn đề phức tạp.

Câu hỏi ví dụ: Suppose that a website contains two tables, the Customers table and the Orders table. Write a SQL query to find all customers who never order anything.

7. String Formatting

Các hàm về chuỗi ký tự rất quan trọng khi làm việc với dữ liệu chưa được làm sạch. Chính vì vậy, nhiều công ty sẽ có bài test liên quan đến dữ liệu chuỗi ký tự để đảm bảo bạn có thể xử lý dữ liệu hiệu quả.

Các nội dung cơ bản về chuỗi ký tự:

LEFT, RIGHT

TRIM

POSITION

SUBSTR

CONCAT

UPPER, LOWER

COALESCE

Follow Fanpage Datapot từ để cập nhật những nội dung liên quan như ảnh dưới đây nhé.

8. Date-time Manipulation

Một nội dung phổ biến trong các bài test tuyển dụng chính là các câu hỏi liên quan đến dữ liệu date-time. Bạn có thể được yêu cầu nhóm các dữ liệu theo tháng hoặc chuyển định dạng từ DD-MM-YYYY sang chỉ hiển thị tháng.

2 hàm bạn cần chú ý là:

EXTRACT

DATEDIFF

Câu hỏi ví dụ: Given a Weather table, write a SQL query to find all dates’ Ids with higher temperature compared to its previous (yesterday’s) dates.

9. Window functions 

Window functions cho phép bạn tính các giá trị gộp (sum, max, count,…) của tất cả các hàng, thay vì  một hàng (như khi sử dụng Group by). Window functions rất hữu ích trong việc xếp hạng, tính lũy kế,…

Câu hỏi ví dụ: Write a query to get the empno with the highest salary. Make sure your solution can handle ties!

10. UNION

Cuối cùng chính là UNION. Tuy không quá phổ biến như các nội dung trên, tuy nhiên bạn cũng có khả năng gặp câu hỏi về UNION và chuẩn bị không bao giờ là thừa. Nếu bạn muốn gộp 2 bảng có 1 số cột giống nhau, đây là lúc sử dụng UNION (Google thêm để tìm hiểu chi tiết về UNION nhé).

Nguồn tham khảo: Towardsdatascience.com

Bên cạnh chỉ học thuộc các câu lệnh, việc hiểu rõ logic đằng sau mỗi câu lệnh, và cách áp dụng chúng trong những trường hợp cụ thể là rất quan trọng. Đây chính là sự khác biệt giữa một người biết SQL và một người có thể sử dụng SQL trong công việc.

Với đội ngũ giảng viên được đào tạo bài bản, nhiều năm kinh nghiệm phân tích và xử lý dữ liệu ở cả môi trường doanh nghiệp trong và ngoài nước, Datapot hướng tới mục tiêu cung cấp những khóa học đơn giản, hiệu quả và gắn liền với thực tiễn nhất có thể.

Tham khảo khóa học SQL for Data Analytics khai giảng 23/11.

Posted on Leave a comment

Bắt đầu học Python như thế nào để ứng dụng trong phân tích dữ liệu?

Là ngôn ngữ lập trình phổ biến nhất trên thế giới, Python thường được giới thiệu đầu tiên cho các bạn muốn theo ngành dữ liệu. Với một rừng tư liệu miễn phí, đầu tư thời gian và nỗ lực học Python có thật sự là lựa chọn lý tưởng?

Bạn có nên học Python hay không? Nên học những gì? Lộ trình như thế nào để phục vụ cho việc theo đuổi ngành dữ liệu? Để trả lời những câu hỏi trên, hãy tham khảo bài viết này nhé!

Ứng dụng của Python trong lĩnh vực Data Science như thế nào?

Ví dụ flow làm việc với Python của một Data Scientist

  1. Sử dụng Python và SQL để truy vấn dữ liệu từ cơ sở dữ liệu của doanh nghiệp.
  2. Sử dụng thư viện pandas của Python để làm sạch dữ liệu, sắp xếp vào các bảng để sẵn sàng cho việc phân tích.
  3. Với các thư viện pandas và matplotlib, chúng ta bắt đầu phân tích, khám phá và visualize.
  4. Sử dụng thư viện scikit-learn để xây dựng các model dự đoán từ dữ liệu sẵn có.
  5. Sắp xếp kết quả phân tích và dự đoán thành với format phù hợp để chia sẻ với các thành viên trong công ty.

Vậy có phải cứ muốn theo đuổi ngành dữ liệu là nên học Python đầu tiên?

Nếu các bạn định hướng trở thành Data Scientist, bạn có thể lựa chọn giữa Python và R. Nhình chung thì Python đang là ngôn ngữ phổ biến hơn (R thường phổ biến trong học thuật và nghiên cứu).

Tuy nhiên, với các bạn định hướng trở thành Data Analyst, BI Analyst, thì như các bạn có thể tìm hiểu trên các tin tuyển dụng, Python sẽ là 1 điểm cộng, chứ không hẳn là công cụ bắt buộc. Nên tùy vào nhu cầu công việc, các bạn có thể lựa chọn học Python hay không.

Học Python như thế nào?

Bước 1: Học các nội dung căn bản về lập trình với Python

Nếu bạn chưa biết code, hoặc chưa sử dụng python bao giờ, bạn sẽ cần bắt đầu từ những khái niệm căn bản nhất như biến, vòng lặp, các câu lệnh cơ bản, logic trong ngôn ngữ lập trình và cách kết hợp chúng như thế nào để thực hiện được 1 tác vụ, giải một bài toán nào đó.

Bước 2: Học về Ứng dụng Python trong phân tích dữ liệu

Các ứng dụng có thể chia làm 4 nhóm chính

  1. Data collecting: Thu thập dữ liệu từ các nguồn khác nhau như file Excel, Database, crawl website,…
  2. Data manipulation: Phần lớn các dữ liệu trong thực tế đều cần xử lý, biến đổi trước khi đưa vào phân tích, nên đây sẽ là kỹ năng bạn cần thành thạo.
  3. Data visualization: Đây sẽ là thử thách cả về lập trình lẫn trình bày, thiết kế (tuy nhiên bạn cũng có thể sử dụng các tool khác chuyên về visualization để hỗ trợ).
  4. Machine Learning: Cần có các kiến thức về thống kê cũng như kinh nghiệm trong lĩnh vực cụ thể để ứng dụng.  

Các thư viện bạn có thể tìm hiểu: NumPy, pandas, Matplotlib, scikit-learn,…

Bước 3: Thực hành với các dự án thực tế

Bạn có thể thấy rằng từ tìm hiểu về tất cả các nội dung trên cho đến có thể thực hành thành thạo và ứng dụng trong công việc không phải là một con đường dễ dàng. Chính vì vậy, các bạn cần xác định rõ mục tiêu, nhu cầu của bản thân và lựa chọn lộ trình học phù hợp để có thể sử dụng Python hiệu quả nhất và không lãng phí thời gian của bản thân.

Với nhiều năm kinh nghiệm làm việc và đào tạo trong ngành dữ liệu, đội ngũ Datapot thiết kế khóa học Python for Data Analytics, tập trung vào ứng dụng Python cơ bản và thiết thực trong phân tích dữ liệu. 

Nguồn tham khảo: Dataquest

Posted on Leave a comment

[Power BI Basic] Nhóm các hàng (Group rows) với Power Query Editor

Power BI không chỉ mạnh mẽ với tính năng Visualize dữ liệu cùng các biểu đồ bắt mắt, việc xử lý, biến đổi dữ liệu với Power BI cũng rất tiện lợi.

Với Power Query Editor của Power BI, bạn có thể chỉnh sử dữ liệu cho phù hợp ngay khi thêm vào Power BI. Chỉnh sửa với Power Query Editor sẽ giúp dữ liệu dù từ nhiều nguồn đồng bộ hơn, và tiết kiệm thời gian hơn đối với các file có dung lượng lớn.

Cụ thể, bạn có thể nhóm các giá trị từ nhiều hàng (Group by). Tính năng này có thể ứng dụng để tính tổng số sản phẩm, tổng doanh thu hay đếm tổng số học sinh.

Trong VD dưới đây, bạn sẽ nhóm các hàng trong một bộ dataset về tuyển sinh từ một file Excel, tính số cơ sở giáo dục (Agency) ở mỗi bang (State).

Chọn cột State Abbr (Mã vùng của các bang), sau đó chọn nút Group By ở tab Transform hoặc tab Home.

Screenshot shows how to group rows in a table.

Khi hộp thoại Group By xuất hiện, bạn có thể điều chỉnh cách nhóm các hàng bằng những cách sau:

  1. Dropdown list để chọn các cột bạn muốn nhóm. Thường thì Power Query Editor sẽ chọn sẵn 1 cột, tuy nhiên bạn có thể thay đổi.
  2. Tên cột mới tạo ra
  3. Cách nhóm: có thể là tính tổng, tìm Median hoặc đếm. Giá trị mặc định sẽ là đếm số hàng.
  4. Thêm các cách nhóm khác.
Screenshot shows the Group By dialog box with Add grouping and Add aggregation called out.

Sau đó bạn chọn OK và xem kết quả. Bạn có thể thấy một cột mới với số cơ sở giáo dục ở mỗi bang.
Với Power Query Editor, nếu như bạn thấy cách nhóm này không phù hợp, chỉ cần vào phần Query Setting và xóa thao tác Group by vừa thực hiện.

Count column, Group By operation, Power Query Editor, Power BI Desktop

Tham khảo video về Transform dữ liệu với Power BI tại.

Tìm hiểu về Tư duy phân tích – Xây dựng báo cáo sử dụng Power BI với khóa học Power BI and Analytical Thinking khai giảng 19/10.

Posted on Leave a comment

10 Nội dung về SQL bạn nên biết khi tham gia phỏng vấn trong ngành dữ liệu (Phần 1)

SQL ngày càng quan trọng trong doanh nghiệp với rất nhiều ứng dụng. Tuy nhiên, với các buổi phỏng vấn trong ngành dữ liệu, sẽ có một số nội dung quan trọng mà hầu hết các công ty đều kiểm tra. Dưới đây là 10 nội dung xuất hiện nhiều nhất vì có tính ứng dụng cao trong thực tế công việc.

Đây cũng là những nội dung bạn nên ôn tập để chuẩn bị cho buổi phỏng vấn sắp tới.

1. Case when

Bạn sẽ gặp nhiều câu hỏi yêu cầu sử dụng Case when, đơn giản vì sự đa dạng trong ứng dụng. Case when cho phép bạn viết các câu lệnh điều kiện phức tạp, xác định những giá trị hoặc nhóm nhất định phụ thuộc vào các biến khác.

Bên cạnh đó, Case when còn giúp bạn tạo pivot table.

Một câu hỏi VD: Write an SQL query to reformat the table so that there is a revenue column for each month.

2. Select distinct

Select distinct là một nội dung bạn cần nắm rõ, rất phổ biến khi kết hợp với aggregate functions.

VD: Nếu bạn có bảng về Customer orders (đơn hàng), bạn thường được yêu cầu tính số đơn hàng trung bình mỗi khách hàng mua. Trong trường hợp này, bạn sẽ tính Tổng số đơn hàng/ Tổng số khách hàng, như dưới đây:

3. Aggregate Functions

Liên quan đến ý bên trên, bạn cần nắm rõ các Aggregate Functions như min, max, sum, count,… Điều này cũng có nghĩa là bạn cần hiểu rõ về cách sử dụng GROUP BY và HAVING. Ở phần này, bạn nên dành nhiều thời gian thực hành, vì với cùng 1 câu hỏi có thể có nhiều cách khác nhau để sử dụng aggregate functions.

VD: Write a SQL query to find all duplicate emails in a table named Person.

4. Left Joins và Inner Joins

Với các bạn mới học SQL, Left Joins và Inner Joins thường dễ gây nhầm lẫn. Bạn cần hiểu rõ với từng phép join sẽ trả về kết quả khác nhau như thế nào. Trong các câu hỏi phỏng vấn, bạn sẽ được yêu cầu thực hành nội dung này, và biết nên sử dụng loại join nào chính là điều quan trọng nhất để trả lời đúng.

5. Self-joins

Chúng ta sẽ đến với một nội dung thú vị – self-join. Việc này phổ biến hơn bạn tưởng bởi vì trong thực tế, khi dữ liệu được lưu trong những bảng lớn thay vì nhiều bảng nhỏ, self-join được sử dụng để giải quyết một số vấn đề đặc biệt như ví dụ dưới đây.

Example Question: Given the Employee table below, write a SQL query that finds out employees who earn more than their managers. For the above table, Joe is the only employee who earns more than his manager.

Nguồn tham khảo: Towardsdatascience.com

Bên cạnh chỉ học thuộc các câu lệnh, việc hiểu rõ logic đằng sau mỗi câu lệnh, và cách áp dụng chúng trong những trường hợp cụ thể là rất quan trọng. Đây chính là sự khác biệt giữa một người biết SQL và một người có thể sử dụng SQL trong công việc.

Với đội ngũ giảng viên được đào tạo bài bản, nhiều năm kinh nghiệm phân tích và xử lý dữ liệu ở cả môi trường doanh nghiệp trong và ngoài nước, Datapot hướng tới mục tiêu cung cấp những khóa học đơn giản, hiệu quả và gắn liền với thực tiễn nhất có thể.

Tham khảo khóa học SQL for Data Analytics khai giảng 21/9 với đầy đủ các nội dung nêu trên.

Posted on Leave a comment

Review Bài thi DA-100

Với một năm rưỡi kinh nghiệm làm việc với Power BI, hôm nay mình đã thi & pass bài thi DA-100.

Vì vậy trong bài viết này, mình sẽ chia sẻ kinh nghiệm thi của mình và 1 số lưu ý, mong là sẽ hữu ích cho các bạn chuẩn bị thi trong thời gian tới.

Lưu ý: Các nội dung thi sẽ thay đổi sau ngày 24/9/2020. Bạn có thể xem các nội dung thi & phân bổ ở link này.

https://query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE4qlRu

Tài liệu ôn thi

Mình không tham gia khóa học nào, thi hoàn toàn dựa trên kinh nghiệm làm việc với Power BI tại công ty. Ngoài ra, bạn có thể tham khảo lộ trình ôn thi chính thức của Microsoft tại đây.

https://docs.microsoft.com/en-us/learn/certifications/exams/da-100

Thời gian thi: 210 phút, thoải mái để hoàn thành bài thi

Cấu trúc bài thi: Có tất cả 56 câu hỏi trắc nghiệm, trong đó 8 câu hỏi cuối liên quan đến case study.

Review và một số lưu ý: Dưới đây là phân bổ điểm của mình để các bạn biết mình làm ok và không ok ở những phần nào. Mình sẽ tóm tắt lại về một số nội dung mà các bạn sẽ gặp trong bài thi cũng như lưu ý về các nội dung đó để các bạn có thể ôn tập.

Prepare the Data

Ở công ty mình thường chỉ kết nối dữ liệu từ SQL databases. Vì vậy, tuning functions hay data aggregations đều khá lạ lẫm. Nếu bạn cũng làm việc trong các công ty nhỏ như mình, thì bạn có thể ôn tập về các từ khóa như ‘Query Diagnostics’, ‘Query Parameters’ và ‘Data Aggregations’. “Data Profilling” cũng là một topic bạn cần tìm hiểu.

Model the Data

Data Modelling và Dax đều nằm trong chủ đề này. Các bạn sẽ được thử thách với câu hỏi về Changing the “filter context of a measure” using CALCULATE. Bạn nên ôn tập về Time Intelligence Functions và M code (ở mức cơ bản, mình đã luyện phần này khi thi bài thi 70 – 778 – analyzing and visualizing with Power BI). Về phần Data Model, các bạn cần hiểu kỹ về topic “Cardinality and Relationship”.

Visualize the data

Mình không có lưu ý gì về phần này. Các bạn có thể mò thêm với “analytics pane” của line chart. Mặc dù mình nghĩ là mình đã trả lời đúng hết các câu hỏi phần này nhưng kết quả thì không phải vậy.

Analyze the Data

Đây là phần mình làm tốt nhất. Sử dụng ‘Q/A Visuals’ và ‘Quick Insights’ là 2 tính năng bạn cần để ý.

Deploy and Maintain Deliverables

Với vai trò là Power BI admin, bạn sẽ được kiểm tra về việc phân quyền trong môi trường làm việc với những yêu cầu bảo mật khác nhau. Nên bạn cần ôn nội dung về “Row-Level Security” với cả Power BI Desktop và Service. 2 chức năng khác mà bạn cần chú ý là “Data Refreshes” và “Data Gateways”.

Kết luận

Trong bài test không có các nội dung về tính năng của Power BI Premium, nhưng bạn có thể xem qua về các khác biệt cơ bản giữa Power BI Pro và Power BI Premium. Nếu bạn đã có trên 1 năm sử dụng Power BI, thì khả năng cao là bạn sẽ pass DA-100, tuy nhiên để đạt điểm cao thì bạn nên xem Lộ trình học từ Microsoft và ôn tập thêm.

Khi Exam 70-778 hết hạn vào năm 2021, thì đây là điểm thích hợp để bạn cập nhật những tính năng mới về Power BI, pass DA-100 và sở hữu chứng chỉ Data Analyst Associate từ Microsoft.

Tham gia group ôn thi DA-100 tại https://www.facebook.com/groups/da100vn

Nguồn: https://controlflow.blog/da100-review/

Posted on Leave a comment

Về các chứng chỉ Microsoft trong lĩnh vực dữ liệu.

Exam DA-100 mình thi thử từ lúc mới bắt đầu Beta từ tháng 4 cũng đã go-live chính thức và trả kết quả. Cũng nhiều bạn inbox hỏi về bài test này nên mình viết bài này để tổng hợp một số bài thi + chứng chỉ phù hợp với các bạn mới bắt đầu và nghiêm túc theo đuổi mảng dữ liệu.

Có kết quả lúc nào cũng chẳng biết :))

Tại sao phải thi chứng chỉ?

Trong thời buổi người người học Data, nhà nhà học Data với ma trận các loại công cụ và kỹ năng khiến cho người học khó xác định mục tiêu cụ thể, nhà tuyển dụng khó xác định được trình độ ứng viên. Việc học và thi một chứng chỉ sẽ giúp các bạn củng cố và hoàn thiện một tập hợp kỹ năng cụ thể, được công nhận bởi Microsoft và được đánh giá chính xác hơn từ doanh nghiệp, nhà tuyển dụng. Vừa xác định chính xác mục tiêu học tập vừa được công nhận từ Microsoft, quá ổn.

Về hệ thống chứng chỉ của Microsoft

Các chứng chỉ của Microsoft xác nhận khả năng sử dụng một công nghệ (tech-based certificate ) hoặc khả năng đảm nhiệm một vị trí công việc cụ thể (role-based certificate) sử dụng chủ yếu các công nghệ của Microsoft.

Xem thêm tại: https://docs.microsoft.com/en-us/learn/certifications/browse/

Để đạt được một chứng chỉ (certificate) bạn cần pass qua một số bài thi (exam) theo yêu cầu, có thể cần một chứng chỉ là điều kiện tiên quyết cho chứng chỉ còn lại. VD: Microsoft Certified Solution Expert (MCSE) thường yêu cầu học viên phải có Microsoft Certified Solution Associate (MCSA) và pass qua các bài test quy định.

Các bài thi (exam) không cần đúng thứ tự, chỉ cần bạn pass qua đủ các bài thi yêu cầu, chứng chỉ tương ứng sẽ tự động được thêm vào profile của bạn. Một bài thi có thể được dùng cho nhiều chứng chỉ khác nhau.

Chi phí và cách thức thi

Chi phí: Các bài thi của Microsoft có giá tại US và $160/exam, nếu chuyển location về Việt Nam, chi phí chỉ còn $80/Exam. Mức giá hợp lý so với chi phí thi các chứng chỉ khác. ( Tableau lên đến $600 :-s )

Hình thức thi: Microsoft ủy quyền việc tổ chức thi cho Pearson Vue. Bạn có thể đến các trung tâm khảo thí được ủy quyền của Pearson Vue hoặc đăng ký thi online. Mình thường thi online vì chủ động thời gian và không phải đi lại. Tuy là thi online nhưng bạn vẫn “được” giám sát thông qua camera và micro nên đừng nghĩ đến chuyện cheating gì cả nhé. :)) Mình có cậu em bị hủy kết quả thi chỉ do có bóng người đi ngang qua lúc đang thi :RIP: Chi tiết quá trình đăng ký và cách thức thi, những lưu ý để không bị bay màu mình sẽ có một bài riêng sau.

Bài thi 100% trắc nghiệm, điểm pass của các bài thi là 700/1000, cơ chế phân phối và cách chấm điểm khác nhau nên không phải cứ làm đúng 70% số câu hỏi là pass, các bạn lưu ý. Hình thức và câu hỏi mẫu mình sẽ làm 1 bài review chi tiết trong group kín (Microsoft cấm các trao đổi về nội dung bài thi).

Thời gian mỗi exam là 180 phút cho ~50 câu hỏi (tùy bài test). Khá dài, như 4 bài mình từng thi thì chỉ dùng hết 60-90 phút. Các bạn không được ăn uống, đi lại hay rời khỏi máy tính trong thời gian này nếu không sẽ bị loại.

Ngôn ngữ thi: Tiếng Anh (Có một số tùy chọn ngôn ngữ khác, nhưng không có tiếng Việt). Bạn cũng sẽ giao tiếp với proctor bằng tiếng Anh, giao tiếp cơ bản thôi nên bạn không phải lo.

Các chứng chỉ: MCSA, MCSE và Microsoft Certified: Data Analyst Associate

Hệ thống chứng chỉ của Microsoft nhiều như quân nguyên, trước đây mình có viết một bài cập nhật những thay đổi gần đây trong hệ thống chứng chỉ. Các bạn có thể xem tại đây: Link

Các bạn có thể xem các chứng chỉ và bài thi của Microsoft tại: Link

Trong phạm vi bài viết này mình sẽ nói về 3 chứng chỉ trong career path Data Management and Analytics. Phù hợp với các bạn định hướng làm Business Intelligent, Data Analyst

Data Management & Analytics Path

Trong hệ thống chứng chỉ hiện tại, MCSE – Microsoft Certified Solution Expert được Microsoft đánh giá tương đương 05 năm kinh nghiệm làm việc chuyên sâu trong lĩnh vực và công nghệ tương ứng. MCSA – Microsoft Certified Solution Associate được đánh đánh giá tương đương 02 năm kinh nghiệm. Để đạt được MCSE, các bạn cần đạt được ít nhất 01 trong 05 chứng chỉ MCSA và pass ít nhất 01 elective exam trong danh sách.

Dễ thấy với các bạn làm thiên về BI và phân tích dữ liệu sẽ phù hợp nhất với MCSA: BI Reporting. Để đạt được chứng chỉ này các bạn cần vượt qua 2 bài test 70-778: Analyzing and Visualizing Data with Microsoft Power BI và 70-779: Analyzing and Visualizing Data with Microsoft Excel.

Mình thi thử thấy 70-778 và 70-779 giống nhau đến 80%. Chỉ khác nhau công cụ sử dụng là Power BI và Excel (Power Pivot + Power Query). Phía bài thi Power BI có khó hơn một chút do có các câu hỏi liên quan đến Power BI Service. Có thể nói nếu bạn tự tin với 70-778 thì bạn hoàn toàn có thể pass 70-779, bài thi 70-779 là không cần thiết(phí 80 trump tệ ;))). Đây có lẽ cũng là lý do khi Micosoft quyết định chuyển đổi sang chứng chỉ Microsoft Certified: Data Analyst với chỉ một bài thi duy nhất xoay quanh Power BI.

Với các bạn đang ôn hoặc chuẩn bị thi MCSA: BI Reporting, việc chuyển đổi sang Microsoft Certified: Data Analyst có một số lợi thế như sau:

Giản lược về cấu trúc: MCSA: BI Reporting gồm 2 bài thi 70-778 (Power BI) và 70-779 (Excel Power Pivot), Microsoft Certified: Data Analyst Associate chỉ có một bài thi duy nhất DA-100 (Power BI).

Nâng cấp về nội dung: So với 70-778, DA-100 bổ sung them các topic về Analyze the data (10-15%) và Deploy and maintain deliverables (10-15%). Việc giảm cấu phần các vấn đề technical và tăng cấu phần các hoạt động liên quan trực tiếp đến hiệu quả công việc Analyze, Deploy & Maintain Deliverables cho thấy Microsoft đã update các yêu cầu chứng chỉ để gần hơn với nhu cầu công việc thực tế.

Bài thi mới và cung cấp dài hạn hơn so với MCSA sẽ ngừng cung cấp vào tháng 01-2021. (chứng chỉ đã nhận được vẫn còn hiệu lực)

Có thể nói, DA-100: Analyzing Data with Microsoft Power BI là một sự lựa chọn hợp lý và tối ưu hơn nhiều so với hai exam 70-778 và 70-779.

Thông tin về DA-100 trên trang chủ Microsoft: Link

Bài viết tiếp theo mình sẽ review kỹ hơn về nội dung 4 exam mình đã làm qua. Sẽ có tài liệu và road map cho các bạn muốn theo đuổi mảng này.

  1. 70-778: Analyzing and Visualizing Data with Microsoft Power BI
  2. 70-779: Analyzing and Visualizing Data with Microsoft Excel
  3. 70-768: Developing SQL Data Models
  4. DA-100: Analyzing Data with Microsoft Power BI
Sưu tập món này vui phết.

Theo dõi các bài viết tiếp theo, trao đổi kinh nghiệm & tài liệu luyện chi chứng chỉ của Microsoft cho Data Analyst tại group Microsoft Certified: Data Analyst Associate Việt Nam (DA-100)