Hướng dẫn data analysis python example - ví dụ về phân tích dữ liệu python

Một nhiệm vụ chung cho các nhà khoa học và kỹ sư là phân tích dữ liệu từ một nguồn bên ngoài có thể ở định dạng văn bản hoặc dấu phẩy [CSV].

Nội phân chính

  • Làm thế nào Python có thể được sử dụng để phân tích dữ liệu?
  • Phân tích dữ liệu có dễ dàng không?
  • Python có khó hơn r không?
  • Python nào là tốt nhất để phân tích dữ liệu?

Bằng cách nhập dữ liệu vào Python, phân tích dữ liệu như thống kê, xu hướng hoặc tính toán có thể được thực hiện để tổng hợp thông tin thành thông tin có liên quan và có thể hành động. Hướng dẫn dưới đây trình bày cách nhập dữ liệu [bao gồm dữ liệu trực tuyến], thực hiện phân tích cơ bản, xu hướng kết quả và xuất kết quả sang tệp văn bản khác. Hai ví dụ được cung cấp với gấu trúc và numpy.

Nhập khẩu và xuất dữ liệu

Nhập gấu trúc dưới dạng pd url = ' //apmonitor.com/pdc/uploads/main/tclab_data2.txt' data = pd.read_csv [url] data.to_csv ['file.csv'] pandas as pd
url = '//apmonitor.com/pdc/uploads/Main/tclab_data2.txt'
data = pd.read_csv[url]
data.to_csv['file.csv']

Nhập khẩu và xuất dữ liệu

Nhập Numpy dưới dạng NP Data = NP.LoadTxt ['File.csv', Delimiter = ',', SkipRows = 1] ; numpy as np
data = np.loadtxt['file.csv',delimiter=',',skiprows=1]
np.savetxt['file2.csv',data,delimiter=',',\
           comments='',header='Index,Time,Q1,Q2,T1,T2']

Các tệp tập lệnh bổ sung với mã nguồn Python với dữ liệu mẫu bên dưới.

Nhập dữ liệu và phân tích với Numpy

# Numpy [Nhập dữ liệu, Thao tác, Xuất] Nhập Numpy dưới dạng NP# Matplotlib [Tạo xu hướng] Nhập Matplotlib.Pyplotas PLT
import numpy as np
# Matplotlib [create trends]
import matplotlib.pyplot as plt

# Tải tệp dữ liệu data_file = np.genfromtxt ['data_file.txt', delimiter = ',']
data_file = np.genfromtxt['data_file.txt', delimiter=',']

# Tạo vectơ thời gian từ dữ liệu đã nhập [bắt đầu từ chỉ mục 0] thời gian = data_file [:, 0]# phân tích dữ liệu cảm biến tốt từ cảm biến dữ liệu đã nhập = data_file [:, 1: 5]
time = data_file[:,0]
# parse good sensor data from imported data
sensors = data_file[:,1:5]

# Hiển thị 6 cảm biến đầu tiên Rowsprint [cảm biến [0: 6]]
print[sensors[0:6]]

# điều chỉnh thời gian để bắt đầu ở mức 0 bằng cách trừ# & nbsp; phần tử đầu tiên trong vectơ thời gian [index = 0] thời gian = thời gian - thời gian [0]
#  first element in the time vector [index = 0]
time = time - time[0]

# Tính trung bình của các bài đọc cảm biến avg = np.mean [cảm biến, 1]# trên chiều thứ 2
avg = np.mean[sensors,1] # over the 2nd dimension

# Xuất dữ liệu# Stack Time và AVG dưới dạng vectơ cột my_data = np.vstack [[thời gian, cảm biến.t, avg]] ', my_data, delimiter =', ']
# stack time and avg as column vectors
my_data = np.vstack[[time,sensors.T,avg]]
# transpose data
my_data = my_data.T
# save text file with comma delimiter
np.savetxt['export_from_python.txt',my_data,delimiter=',']

# Tạo một hình plt.figure [1] plt.plot [thời gian/60.0, cảm biến [:, 1], 'ro'] plt.plot [thời gian/60.0, avg, 'b.']# Thêm nhãn văn bản vào lô plt.legend [['cảm biến 2', 'cảm biến trung bình 1-4']] plt.xlabel ['Time [min]'] plt.ylabel ['giá trị cảm biến']# Lưu hình dưới dạng tệp png plt. SaveFig ['my_python_plot.png']# Hiển thị hình trên màn hình [thực hiện tạm dừng cho đến khi đóng] plt.show []
plt.figure[1]
plt.plot[time/60.0,sensors[:,1],'ro']
plt.plot[time/60.0,avg,'b.']
# add text labels to the plot
plt.legend[['Sensor 2','Average Sensors 1-4']]
plt.xlabel['Time [min]']
plt.ylabel['Sensor Values']
# save the figure as a PNG file
plt.savefig['my_Python_plot.png']
# show the figure on the screen [pauses execution until closed]
plt.show[]

Nhập dữ liệu và phân tích với gấu trúc

# Nhập Numpy, Pandas và Matplotlibimport Numpy như NPIMPORT PANDAS như pdimport matplotlib.pyplotas plt
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

# Tải tệp dữ liệu url = ' //apmonitor.com/che263/uploads/main/data_with_headers.txt' data_file = pd.read_csv [url]
url='//apmonitor.com/che263/uploads/Main/data_with_headers.txt'
data_file = pd.read_csv[url]

# Tạo vectơ thời gian từ DataTime đã nhập = data_file ['Time']# Parse Dữ liệu cảm biến tốt từ cảm biến dữ liệu đã nhập = data_file.loc [:, 's1': 's4']]
time = data_file['time']
# parse good sensor data from imported data
sensors = data_file.loc[:, 's1':'s4']

# Hiển thị 6 cảm biến đầu tiên Rowsprint [cảm biến [0: 6]]# hoặc sử dụng: in [cảm biến.head [6]]
print[sensors[0:6]]
# or use: print[sensors.head[6]]

# điều chỉnh thời gian để bắt đầu ở mức 0 bằng cách trừ# & nbsp; phần tử đầu tiên trong vectơ thời gian [index = 0] thời gian = thời gian - thời gian [0]
#  first element in the time vector [index = 0]
time = time - time[0]

# Tính trung bình của các bài đọc cảm biến avg = np.mean [cảm biến, 1]# trên chiều thứ 2
avg = np.mean[sensors,1] # over the 2nd dimension

# Xuất dữ liệu# Stack Time và AVG dưới dạng vectơ cột my_data = np.vstack [[thời gian, cảm biến.t, avg]] ', my_data, delimiter =', ']
my_data = [time, sensors, avg]
result = pd.concat[my_data,axis=1]
result.columns.values[-1] = 'avg'

# Tạo một hình plt.figure [1] plt.plot [thời gian/60.0, cảm biến [:, 1], 'ro'] plt.plot [thời gian/60.0, avg, 'b.']# Thêm nhãn văn bản vào lô plt.legend [['cảm biến 2', 'cảm biến trung bình 1-4']] plt.xlabel ['Time [min]'] plt.ylabel ['giá trị cảm biến']# Lưu hình dưới dạng tệp png plt. SaveFig ['my_python_plot.png']# Hiển thị hình trên màn hình [thực hiện tạm dừng cho đến khi đóng] plt.show []to_csv['result.csv']
#result.to_excel['result.xlsx']
result.to_html['result.htm']
result.to_clipboard[]

Nhập dữ liệu và phân tích với gấu trúc
plt.figure[1]
plt.plot[time,sensors['s1'],'r-']
plt.plot[time,avg,'b.']
# add text labels to the plot
plt.legend[['Sensor 2','Average']]
plt.xlabel['Time [sec]']
plt.ylabel['Sensor Values']
# save the figure as a PNG file
plt.savefig['my_Python_plot.png']
# show the figure on the screen
plt.show[]

# Nhập Numpy, Pandas và Matplotlibimport Numpy như NPIMPORT PANDAS như pdimport matplotlib.pyplotas plt

# Tải tệp dữ liệu url = ' //apmonitor.com/che263/uploads/main/data_with_headers.txt' data_file = pd.read_csv [url]

# Tạo vectơ thời gian từ DataTime đã nhập = data_file ['Time']# Parse Dữ liệu cảm biến tốt từ cảm biến dữ liệu đã nhập = data_file.loc [:, 's1': 's4']] pandas as pd
import matplotlib.pyplot as plt

# Hiển thị 6 cảm biến đầu tiên Rowsprint [cảm biến [0: 6]]# hoặc sử dụng: in [cảm biến.head [6]]
url = '//apmonitor.com/che263/uploads/Main/goog.csv'

# xuất dữ liệu my_data = [thời gian, cảm biến, avg] result = pd.concat [my_data, trục = 1] result.columns.values ​​[-1] = 'avg'
data = pd.read_csv[url]
print[data['Close'][0:5]]
print['min: '+str[min[data['Close'][0:20]]]]
print['max: '+str[max[data['Close'][0:20]]]]

result.to_csv ['result.csv']#result.to_excel ['result.xlsx'] result.to_html ['result.htm'] result.to_clipboard []
plt.figure[]
plt.plot[data['Open'][0:20]]
plt.plot[data['Close'][0:20]]
plt.xlabel['days ago']
plt.ylabel['price']
plt.show[]

# Tạo một hình plt.figure [1] plt.plot [thời gian, cảm biến ['s1'], 'r-'] plt.plot [thời gian, avg, 'b.']# Thêm nhãn văn bản vào lô plt. Legend [['Sensor 2', 'trung bình']] plt.xlabel ['Time [sec]'] plt.ylabel ['giá trị cảm biến'] ]# Hiển thị hình trên màn hình plt.show []

Từ Gekko Nhập Gekkoimport Numpy với tư cách là NPIMPORT MATPLOTLIB.PYPLOTAS PLT & NBSP; Nhập Pandas dưới dạng PD gekko import GEKKO
import numpy as np
import matplotlib.pyplot as plt  
import pandas as pd

# Google Stock URL = ' //apmonitor.com/che263/uploads/main/goog.csv'
url = '//apmonitor.com/che263/uploads/Main/goog.csv'

# Nhập dữ liệu với dữ liệu gấu trúc = pd.Read_csv [url] in [dữ liệu ['đóng'] [0: 5]] in ['min:'+str [min [data ['đóng'] [0:20]] ]] in ['max:'+str [max [dữ liệu ['đóng'] [0:20]]]]]
data = pd.read_csv[url]
print[data['Close'][0:5]]
print['min: '+str[min[data['Close'][0:20]]]]
print['max: '+str[max[data['Close'][0:20]]]]

# Gekko model m = gekko []
m = GEKKO[]

# dữ liệu đầu vào x = m.param [value = np.array [data ['open']]]]]
x = m.Param[value=np.array[data['Open']]]

# tham số để tối ưu hóa a = m.fv [] a.status = 1 b = m.fv [] b.status = 1 c = m.fv [] c.status = 1
a = m.FV[]
a.STATUS=1
b = m.FV[]
b.STATUS=1
c = m.FV[]
c.STATUS=1

# biến y = m.cv [value = np.array [data ['đóng']]] y.fstatus = 1
y = m.CV[value=np.array[data['Close']]]
y.FSTATUS=1

# Phương trình hồi quy m.equation [y == b*m.exp [a*x]+c]
m.Equation[y==b*m.exp[a*x]+c]

# Chế độ hồi quy M.Options.imode = 2
m.options.IMODE = 2

# Tối ưu hóa M.Options.Solver = 1 M.Solve [Disp = true]
m.options.solver = 1
m.solve[disp=True]

# print tham sốPrint ['tối ưu hóa, a =' + str [a.value [0]]] in ['tối ưu hóa, b =' + str [b.value [0]]] in ['tối ưu hóa, c =' + str [C.Value [0]]]
print['Optimized, a = ' + str[a.value[0]]]
print['Optimized, b = ' + str[b.value[0]]]
print['Optimized, c = ' + str[c.value[0]]]

# lô dữ liệu plt.figure [] plt.plot [data ['open'], data ['đóng'], 'ro', nhãn = 'dữ liệu stock'] plt.plot [x.value, y.value, ' bx ', nhãn =' dự đoán '] plt.xlabel [' giá mở '] plt.ylabel [' giá đóng '] plt.legend [] plt.show []
plt.figure[]
plt.plot[data['Open'],data['Close'],'ro',label='Stock Data']
plt.plot[x.value,y.value,'bx',label='Predicted']
plt.xlabel['Open Price']
plt.ylabel['Close Price']
plt.legend[]
plt.show[]

Hướng dẫn này cũng có thể được hoàn thành với Excel và Matlab. Nhấp vào liên kết thích hợp để biết thêm thông tin.

Làm thế nào Python có thể được sử dụng để phân tích dữ liệu?

Một trong những cách sử dụng phổ biến nhất cho Python là khả năng tạo và quản lý các cấu trúc dữ liệu một cách nhanh chóng - ví dụ, Pandas cung cấp rất nhiều công cụ để thao tác, phân tích và thậm chí đại diện cho cấu trúc dữ liệu và bộ dữ liệu phức tạp.create and manage data structures quickly — Pandas, for instance, offers a plethora of tools to manipulate, analyze, and even represent data structures and complex datasets.

Phân tích dữ liệu có dễ dàng không?

Tại sao phân tích dữ liệu sử dụng Python ?..

Python rất dễ học và hiểu và có cú pháp đơn giản ..

Ngôn ngữ lập trình có thể mở rộng và linh hoạt ..

Nó có một bộ sưu tập lớn các thư viện để tính toán số và thao tác dữ liệu ..

Python cung cấp các thư viện cho đồ họa và trực quan hóa dữ liệu để xây dựng các sơ đồ ..

Python có khó hơn r không?

Nhìn chung, cú pháp dễ đọc của Python mang đến cho nó một đường cong học tập mượt mà hơn. R có xu hướng có một đường cong học tập dốc hơn ngay từ đầu, nhưng một khi bạn hiểu cách sử dụng các tính năng của nó, nó sẽ dễ dàng hơn đáng kể.R tends to have a steeper learning curve at the beginning, but once you understand how to use its features, it gets significantly easier.

Python nào là tốt nhất để phân tích dữ liệu?

Pandas [phân tích dữ liệu Python] là phải trong vòng đời khoa học dữ liệu. Đây là thư viện Python phổ biến và được sử dụng rộng rãi nhất cho khoa học dữ liệu, cùng với sự numpy trong matplotlib. is a must in the data science life cycle. It is the most popular and widely used Python library for data science, along with NumPy in matplotlib.

Bài Viết Liên Quan

Chủ Đề