Tải bản đầy đủ (.pptx) (24 trang)

Ứng dụng VBA trong excel vào sử lý dữ liệu

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (734.91 KB, 24 trang )

Trường Đại học Bách Khoa Hà Nội
Viện Điện

ĐỒ ÁN TỐT NGHIỆP
ỨNG DỤNG EXCEL TRONG PHÂN TÍCH VÀ XỬ LÍ SỐ LIỆU

Sinh viên thực hiện:

PHÙNG VĂN TOÀN

Lớp:

ĐK& TĐH 05 – K59

Giảng viên hướng dẫn: TS. Nguyễn Công Phương


Trường Đại học Bách Khoa Hà Nội

BỐ CỤC

I.

Tổng quan về phân tích dữ liệu

II.

Phần mềm phân tích dữ liệu và Excel

III. Ứng dụng Excel trong phân tích và xử lí số liệu
IV.



Kết luận

2


Trường Đại học Bách Khoa Hà Nội

Chương I : Tổng quan về phân tích dữ liệu

1.1. Lý do cần phần tích dữ liệu



Dữ liệu là thơng tin dưới dạng dữ kiện hoặc dạng số, được thu thập để kiểm tra, đánh giá và sử dụng để giúp ra quyết định; hoặc dưới dạng phiếu điện tử mà máy tính có thể lưu
trữ và sử dụng được.



Hiện nay, nhiều lĩnh vực trên thế giới đang dần được số hoá và dữ liệu hóa. Trên cơ sở dữ liệu hóa đó giúp cho người dùng dễ dàng tiếp cận, theo dõi, quản lí, phân tích và đánh
giá vấn đề đang quan tâm, tìm hiểu trong suốt quá trình nghiên cứu, khảo sát



Phân tích dữ liệu q trình phát hiện, giải thích và truyền đạt các mơ hình có ý nghĩa trong dữ liệu. Đặc biệt có giá trị trong các lĩnh vực có nhiều thơng tin được ghi lại, phân tích
dựa vào sự ứng dụng đồng thời của số liệu thống kê, lập trình máy tính và nghiên cứu hoạt động để định lượng hiệu suất.



Ứng dụng của phân tích dữ liệu: giao thơng, cơng nghệ, y tế, con người, an tồn thông tin, kinh doanh thường mại, an ninh, ….


3


Trường Đại học Bách Khoa Hà Nội

Chương II : Phần mềm phân tích dữ liệu và Excel

2.1. Những cơng cụ được sử dụng để phân tích dữ liệu hiện nay

Ngồi ra, còn một số phần mềm được sử dụng để phân tích số liệu lớn (Big data) như: Azure HDInsight, Elaticsearch, Lumify, Apache SAMOA, Plotly, Apache Spark,
Splice Machine,… cung cấp các mơ hình phân tích, giúp cho các cá nhân, nhóm, hệ thống và doanh nghiệp có hệ thống các thuật tốn và kỹ thuật phân tích tiên tiến,
khoa học.

4


Trường Đại học Bách Khoa Hà Nội

Chương II : Phần mềm phân tích dữ liệu và Excel

2.2. Phần mềm Excel
2.2.1. Giới thiệu chung về Excel





Phần mềm bảng tính dùng để trợ giúp tính tốn được sử dụng rộng rãi trong nhiều lĩnh vực nghiên cứu khoa học, phân tích tài chính, kế tốn –
thống kê…Có rất nhiều chương trình phần mềm bảng tính khác nhau ví dụ như Excel, Google trang tính, …Trong số đó, đồ án tập trung vào

nghiên cứu ứng dụng Excel.
Microsoft Excel là một chương trình ứng dụng thuộc bộ Microsoft Office, là một công cụ mạnh để thực hiện các bảng tính chuyên nghiệp. Cũng
như các chương trình bảng tính Lotus, Quattro, … bảng tính của Excel cũng bao gồm nhiều ô được tạo bởi các dịng và cột, việc nhập dữ liệu và
tính tốn trong Excel cũng có những điểm tương tự.
Excel là chương trình xây dựng cơ sở dữ liệu và phân tích số liệu của hàng triệu doanh nghiệp trên thế giới. Trẻ em cũng được học sử dụng ở
trường. Excel, với nhiều tính năng mới trong phiên bản cập nhật gần đây, xứng đáng giữ vững vị trí phần mềm xử lý dữ liệu hàng đầu thế giới.

5


Trường Đại học Bách Khoa Hà Nội

Chương II : Phần mềm phân tích dữ liệu và Excel

2.2. Phần mềm Excel
2.2.2. Các thao tác cơ bản trong Excel







Thao tác ban đầu: Khởi động, trang bảng tính, thốt khỏi Excel, lưu giữ và đóng bảng tính.
Nhập dữ liệu trong bảng tính
Hiệu chỉnh và định dạng bảng tính
Sử dụng các hàm cơ bản trong Excel: Hàm số học, hàm kí tự, hàm Logic, hàm điều kiện, …
Đồ thị trong Excel: vẽ, hiệu chỉnh và định dạng đồ thị.

2.2.3. Phiên bản Excel trong Office 365 mới nhất hiện nay


∗ Thêm các hàm mới (CONCAT, IFS, SWITCH, ….)
∗ Dạng biểu đồ mới (dạng biểu đồ, dạng phễu,…)
∗ Tính năng vẽ ưu việt (sử dụng bút chì số, viết tay phương trình,…)
∗ Chia sẻ liên kết dễ dàng hơn (chèn liên kết gần đây, lưu nhanh vào các thưc mục gần
đây,…)

6


Trường Đại học Bách Khoa Hà Nội

Chương II : Phần mềm phân tích dữ liệu và Excel
2.2. Phần mềm Excel
2.2.4. Lí do sử dụng Excel để phân tích dữ liệu





Excel đã trở thành một cơng cụ quản lí và phân tích dữ liệu quan trọng trong mọi lĩnh vực hiện nay.



Nhờ vào các ơ bảng tính với các cột được đánh dấu bằng chữ trong khi các dòng ngang được đánh dấu bằng số giúp thao tác tìm kiếm và
chèn dữ liệu dễ dàng, thực hiện các phép tính tốn hay các hàm phức tạp hay tạo chart, biểu đồ hay histogram bằng cách chèn dữ liệu
vào.

Excel có nhiều tính năng ưu việt và có giao diện rất thân thiện với người sử dụng
Excel Office 365 cung cấp rất nhiều thông tin quan trọng cho người dùng trong việc tiếp cận các tính năng mới để phân tích, quản lí, theo

dõi dữ liệu một cách hiệu quả, thuận tiện.

7


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.1. Ứng dụng VBA xử lý dữ liệu trong Excel



VBA (Visual Basic for Applications) là ngơn ngữ lập trình của Excel nói riêng và các ứng dụng khác của Microsoft Office nói chung. Nó được tích
hợp sẵn trong các ứng dụng của Microsoft Office.



Lập trình VBA trong Excel làm cho máy tính có khả năng tự động thực hiện các thao tác người dùng muốn làm trong Excel. Vì vậy, khi muốn thực
hiện chức năng nào đó ta chỉ cần gọi các câu lệnh đã lập trình sẵn bằng VBA thì Excel sẽ tự động thực hiện các thao tác đó một cách nhanh chóng
và tiết kiệm thời gian so với sử dụng bằng tay.

8


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.1. Ứng dụng VBA xử lý dữ liệu trong Excel


Để lập trình VBA trong Excel 365 ta thực hiện các bước sau:

a)

Chọn File  Options một cửa sổ Excel Options hiện ra

b)

Trong cửa sổ Excel Options ta chọn Customize  Developer rồi nhấn
OK

c)

Khi đó trên thanh cơng cụ Excel sẽ xuất hiện thẻ Developer. Chọn
Developer  Visual Basic

d)

Một cửa sổ Visual Basic for Applications sẽ mở ra. Click chuột phải vào
VBAProject chọn Insert  Module

Hình 3.1. Cửa sổ Visual Basic for
Applications

9


Trường Đại học Bách Khoa Hà Nội


Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.2. Ví dụ dùng VBA xử lí số liệu tìm cơng thức xấp xỉ của mối quan hệ giữa độ rọi (lux) của ánh sáng với điện trở của quang trở

Bảng 3.1 là dữ liệu về điện trở và độ rọi của một quang trở. Ta cần đi
xác định mối quan hệ giữa điện trở và độ rọi đó.
Để thực hiện điều đó ta có thể dùng VBA xử lý dữ liệu và tìm cơng
thức xấp xỉ cho mối quan hệ giữa điện trở và độ rọi (lux) của một quang trở.

r

lux

2000

1888

1800

1965

1600

2010

1400

2131

1200


2264

1000

2416

900

2519

800

2623

700

2715

650

2750

600

2807

550

2870


500

2926

450

3045

400

3083

350

3144

300

3220

250

3285

200

3355

160


3600

Bảng 3.1. Giá trị điện trở của quang trở phụ thuộc vào ánh sáng

10


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.2. Ví dụ dùng VBA xử lí số liệu tìm cơng thức xấp xỉ của mối quan hệ giữa độ rọi (lux) của ánh sáng với điện trở của quang trở

Khi ánh sáng chiếu vào quang trở thì điện trở của quang trở thay đổi, ánh sáng càng sáng thì
điện trở càng giảm, tuy nhiên mối hệ giữa điện trở và ánh sáng khơng phải là tuyến tính mà
thay đổi theo cấp số nhân (Như hình 3.2).
Tuy nhiên dạng mỗi quan hệ giữa log(lux) và log(R ) có thể coi là tuyến tính có dạng(Như
hình 3.3):
Hình 3.2. Mối quan hệ giữa điện trở (R) và độ rọi (lux)

 
log(lux) = m*log(R ) + b

(3.1)

 
Từ đó ta có thể xấp xỉ cơng thức mối quan hệ của độ rọi và điện trở là:
 
lux = R


m

* 10

b

(3.2)

Hình 3.3. Mối quan hệ giữa log(lux) và log(R )

11


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.2. Ví dụ dùng VBA xử lí số liệu tìm cơng thức xấp xỉ của mối quan hệ giữa độ rọi (lux) của ánh sáng với điện trở của quang trở

Thuật toán thực hiện các bước xử lý như sau:



Đầu tiên ta nhập các giá trị tương ứng của điện trở(R ) và độ rọi(lux) của quang trở vào bảng trong
Sheets rawData.



Sau khi nhập xong ta chạy đoạn code như ở PL1. Đầu tiên ta sẽ tìm kích thước của bảng đã nhập

trong Sheets rawData(số hàng và cột). Dựa vào kích thước đã tìm được ta copy vùng dữ liệu cần
xử lý trong Sheets rawData xang Sheets Lux_Analysis.



Sau khi dữ liệu được copy xang Sheets Lux_Analysis ta tính tốn log10(lux) và log10(R). Bằng
cách dùng vịng lặp for ta có thể dễ dàng tính tốn các giá trị trên tương ứng với từng giá trị lux và
R trong bảng dữ liệu.

Hình 3.4. Lưu đồ thuật toán

12


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.2. Ví dụ dùng VBA xử lí số liệu tìm cơng thức xấp xỉ của mối quan hệ giữa độ rọi (lux) của ánh sáng với điện trở của quang trở

-

Tiếp theo ta sử dụng các giá trị log10(lux) và log10(R) tính tốn được ở trên để đi tìm
tham số m và b trong công thức xấp xỉ (3.2).

-

Với giá trị tìm được của m và b ta tính tốn được giá trị của lux theo công thức (3.2).
Đây là giá trị tính tốn theo cơng thức xấp xỉ nên cần tiến hành so sánh với giá trị
thực tế. Ta tính sai số tương đối để thực hiện việc so sánh đó.


-

Cuối cùng sau tất cả các bước trên việc tính tốn đã hồn thành và đoạn code đã chạy
xong.

Hình 3.4. Lưu đồ thuật toán

13


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.2. Ví dụ dùng VBA xử lí số liệu tìm cơng thức xấp xỉ của mối quan hệ giữa độ rọi (lux) của ánh sáng với điện trở của quang trở

Kết quả đạt được khi thực hiện với dữ liệu như trong Bảng 3.1 (Như trong hình 3.5)
Các giá trị tìm được là:
m = -0.255493441
b = 4.143133773
Với các giá trị trên ta có cơng thức xấp xỉ mối quan hệ của độ rọi và điện trở là:
 
lux = R

-0.255493441

* 10

4.143133773


(3.3)

Hình 3.5. Kết quả phân tích dữ liệu độ rọi lux và điện trở của quang trở

14


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.2. Ví dụ dùng VBA xử lí số liệu tìm cơng thức xấp xỉ của mối quan hệ giữa độ rọi (lux) của ánh sáng với điện trở của quang trở
Giá trị lux tính theo cơng thức tìm
Sai số tương đối
được

Dùng cơng thức 3.3 ta tính tốn được giá trị độ rọi(lux ) theo điện trở (r ) như bảng 3.2

1994.078548

5.618567176

2048.486

4.248651404

2111.06757

5.028237305


2184.332242

2.502686155

2272.077609

0.356784867

2380.419235

1.472713795

2445.367802

2.923072569

2520.074173

3.92397357

2607.533434

3.958252909

Qua ví dụ trên ta thấy việc ứng dụng VBA vào trong tính tốn xử lý dữ liệu giúp tiết kiệm

2657.375099

3.368178221


thời gian và có độ chính xác khá cao. Ta có thể xử lý những bộ dữ liệu tương tự một cách nhanh chóng

2712.278936

3.37445898

Sai số tương đối giữa giá trị xấp xỉ tính theo cơng thức (3.3) và giá trị thực tế được tính tốn và
thể hiện trong bảng 3.2.
Từ bảng 3.2 ta thấy sai số tương đối của công thức khá nhỏ. Hầu hết sai số khoảng dưới 4%.
Điều đó cho thấy việc tính tốn cơng thức khá chính xác.

hơn.
Hạn chế còn tồn tại khi thực hiện xử lý bằng đoạn code này là khi nhập giá lux và r vào
mà để trống một số ơ giá trị nào đó sẽ khiến q trình tính tốn bị sai lệch.

2773.250377

3.371067006

2841.611098

2.88410465

2919.143058

4.133232899

3008.323338


2.42220765

3112.727302

0.994678678

3237.766614

0.551758212

3392.156102

3.261981791

3591.167833

7.039279661

3801.855226

5.607089602

Bảng 3.2. Giá tri lux tính theo cơng thức và sai số tương đối

115


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu


3.3. Ví dụ dùng VBA phân tích dữ liệu về nhiệt độ của các ngày trong tháng

Bộ dữ liệu cần phân tích là nhiệt độ
được ghi nhận từ 0h đến 23h mỗi ngày có
dạng như hình 3.6

Hình 3.6. Dữ liệu nhiệt độ

16


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.3. Ví dụ dùng VBA phân tích dữ liệu về nhiệt độ của các ngày trong tháng
Thuật toán thực hiện các bước xử lý như sau:

-

Đầu tiên ta import dữ liệu vào Excel như đã nói ở trên.

-

Sau khi import dữ liệu ta copy dữ liệu bao gồm Year, Month, Day, Hour, Minute, Temperature từ Sheets
data_raw xang Sheets data.

-


Dùng lặp for để gộp các giá trị Year, Month, Day lại thành một cột date và các giá trị Hour, Minute lại thành một
cột time trong Sheets data.

-

Xác đinh vị trí các cột date, time, Temperature per hour trong Sheets data

-

Copy cột date từ Sheets data xang Sheets analysis. Trong Sheets analysis cột date được xử lý để lọc bỏ các giá trị
trùng lặp. Sau đó ta copy cột giờ trong Sheets data xang Sheets analysis, lọc bỏ các giá trị trùng lặp và chuyển
thành hàng từ 0h đến 23h

Hình 3.22. Lưu đồ thuật toán dự báo nhiệt độ

17


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.3. Ví dụ dùng VBA phân tích dữ liệu về nhiệt độ của các ngày trong tháng

-

Tìm vị trí cột Temperature per hour để copy dữ liệu từ cột này trong Sheets data xang Sheets analysis. Ở Sheets
analysis dữ liệu nhiệt độ được xếp theo hàng ứng với mỗi ngày.

-


Cuối cùng trong Sheets analysis ta tính giá trị trung bình nhiệt độ trong ngày, tìm giá trị nhiệt độ lớn nhất và nhỏ
nhất trong ngày. Các giá trị này sau đó sẽ dùng để dự báo nhiệt độ trung bình, nhiệt độ lớn nhất, nhỏ nhất cho
các ngày sau. Sau đó tạo một Workbooks để lưu kết quả dự báo đó.

Hình 3.22. Lưu đồ thuật toán dự báo nhiệt độ

18


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.3. Ví dụ dùng VBA phân tích dữ liệu về nhiệt độ của các ngày trong tháng

•Kết quả dự đốn dựa trên nhiệt độ lớn nhất trong ngày (Như hình 3.27)

Hình 3.27. Kết quả dự báo nhiệt độ lớn nhất trong ngày

19


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.3. Ví dụ dùng VBA phân tích dữ liệu về nhiệt độ của các ngày trong tháng

•Kết quả dự đốn dựa trên nhiệt độ lớn nhất trong ngày (Như hình 3.28)


Hình 3.28. Kết quả dự báo nhiệt độ nhỏ nhất trong ngày

20


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.3. Ví dụ dùng VBA phân tích dữ liệu về nhiệt độ của các ngày trong tháng
Thực tế

Dự báo

Date
T_Average

Từ bảng trên ta thấy kết quả dự báo dựa trên trung bình nhiệt độ trong ngày khá

T_Max

T_Min

T_Average

T_Max

T_Min


chính xác trong một vài ngày đầu tiên. Các ngày tiếp theo dự báo khơng cịn chính

5/1/2019

13.44916667

19.33

5.48

13.04284

16.80159

7.950713

xác nữa. Càng về sau kết quả dự báo càng sai khác nhiều. Các dự báo dựa trên

5/2/2019

13.17833333

18.69

9.68

13.18797

16.98759


8.085615

5/3/2019

11.01625

14.51

8.29

13.33311

17.17358

8.220517

5/4/2019

7.000833333

12.2

2.22

13.47825

17.35958

8.355418


5/5/2019

5.07

10.72

-0.62

13.62339

17.54557

8.49032

5/6/2019

7.643333333

12.6

2.09

13.76853

17.73157

8.625222

5/7/2019


10.95916667

16.91

3.9

13.91367

17.91756

8.760124

5/8/2019

11.74291667

13.08

9.96

14.0588

18.10355

8.895026

5/9/2019

11.56458333


14.19

7.83

14.20394

18.28955

9.029928

5/10/2019

12.81208333

17.21

7.16

14.34908

18.47554

9.16483

5/11/2019

13.02916667

15.26


9.28

14.49422

18.66154

9.299732

nhiệt độ lớn nhất và nhỏ nhất trong ngày độ chính xác thấp hơn so với dự báo dựa
trên trung bình nhiệt độ trong ngày

5/12/2019

10.1725

14.2

5.96

14.63936

18.84753

9.434634

5/13/2019

10.11416667

17.08


1.2

14.78449

19.03353

9.569536

5/14/2019

9.943333333

15.6

2.55

14.92963

19.21952

9.704437

5/15/2019

9.48625

16.02

2.34


15.07477

19.40552

9.839339

5/16/2019

10.5375

16.08

3.62

15.21991

19.59151

9.974241

5/17/2019

13.67833333

18.99

7.64

15.36505


19.7775

10.10914

Bảng 3.3. Giá trị nhiệt độ trung bình, nhiệt độ lớn nhất, nhỏ nhất thực tế và dự báo

21


Trường Đại học Bách Khoa Hà Nội

Chương III : Ứng dụng Excel trong phân tích và xử lí số liệu

3.3. Ví dụ dùng VBA phân tích dữ liệu về nhiệt độ của các ngày trong tháng

Một số hạn chế còn tồn tại khi thực hiện xử lý dữ liệu nhiệt độ là:

o

Khi Workbooks lưu kết quả xử lý đang được mở mà ta chạy đoạn code xử lý sẽ gây ra lỗi. Vì vậy cần đóng Workbooks
này trước khi thực hiện chạy đoạn code.

o

Tên Workbooks lưu kết quả xử lý là cố định vì vậy mỗi lần thực hiện chạy code sẽ ghi đè nội dung mới lên file đã tồn tại.

22



Trường Đại học Bách Khoa Hà Nội

KẾT LUẬN



Microsoft Excel là một ứng dụng bảng tính khá phổ biến hiện nay, được nhiều người sử dụng để thu thập và phân tích dữ liệu, nâng cao, tạo lập và khai
thác cơ sở dữ liệu, phân tích và dự đốn, dự báo kinh tế, vẽ đồ thị, …Người dùng có thể sử dụng bảng tính trong Excel để giải quyết các bài tốn kinh tế,
kế tốn, tài chính và các cơ sở dữ liệu trong quá trình học tập, nghiên cứu cũng như làm việc, phân tích và quản lí dữ liệu sau này.



Hiện nay có rất nhiều phần mềm phân tích số liệu là một công cụ không thể thiếu đối với các nhà thống kê ở nhiều lĩnh vực như: SAS, SPSS, STATA, R…
đặc biệt là phần mềm Excel phù hợp với nhiều đố tượng với tính năng dễ dàng tiếp cận và sử dụng.



Với những tính năng ưu việt trên, Excel đã trở thành một cơng cụ quản lí và phân tích dữ liệu quan trọng trong mọi lĩnh vực hiện nay.



Microsoft Excel phù hợp với nhiều đối tượng từ doanh nhân, sinh viên, chuyên gia hay bất kỳ ai muốn thu thập và phân tích dữ liệu

23


Trường Đại học Bách Khoa Hà Nội

Em xin Cảm ơn thầy cô và các bạn
đã chú ý theo dõi


24



×