Hướng dẫn which term describes python - thuật ngữ nào mô tả con trăn

12) XXX nào sẽ hiển thị hơn một nửa giá trị nhỏ nhất của W1, W2 và W3?

def min_value (a, b, c): ---- nếu a----if a
----if a <= b and a <= c:
--------return a
----elif b <= a and b <=c:
--------return b
----else:
--------return c
w1 = 7
w2 = 3
w3 = 12
y = XXX
print(y)

một. MIN_VALUE (W1, W2, W3)/2 + 1B. MIN_VALUE (W1+1, W2+1, W3+3)/2C. Min_Value ()/2 + 1, W1, W2, W3D. MIN_VALUE: W1, W2, W3 () /2 + 1b. min_value(w1+1, w2+1, w3+3)/2c. min_value()/2 + 1, w1, w2, w3d. min_value: w1, w2, w3() /2 + 1
b. min_value(w1+1, w2+1, w3+3)/2
c. min_value()/2 + 1, w1, w2, w3
d. min_value: w1, w2, w3() /2 + 1

Hướng dẫn which term describes python - thuật ngữ nào mô tả con trăn

Câu 4 Thuật ngữ nào mô tả cách Python gán loại biến? O a. Gõ động o b. Gõ tĩnh o c. Nhập nhanh o d. Câu hỏi gõ ngẫu nhiên 5 Lỗi là gì? cone_vol = cone_volume (2, 4) in (cone_vol) def compute_square (r): return r * r def cone_volume (r, h): return (0.33) * 3.14 * compute_square (n) * h o a. Không có lỗi, chương trình thực thi và xuất ra giá trị chính xác o b. Hàm không xác định compute_square () o c. Biến không xác định hình nón_voll) o d. Hàm không xác định CONE_VOLUME () Câu 6 Dòng nào của hàm có lỗi? def compute_sum_of_squares (num1, num2): # line 1 sum = (num1 * num1) + (num2 * num2) # line 2 return # line 3 o a. Dòng 1 o b. Dòng 2 o c. Dòng 3 o d. Không có dòng nào chứa lỗi câu hỏi 7 Lựa chọn nào không phải là cuộc gọi hợp lệ của phương thức get_random_pair ()? def get_random_pair (): a = ngẫu nhiên.randint (0, 100) b = ngẫu nhiên.randint (0, 100) Trả về a, b o a. . do_output (sản phẩm_name, sản phẩm_id, chi phí): in ('{: s) (id: {: d}) - {: .2f}'. định dạng (sản phẩm_name, sản phẩm_id, chi phí)) o a. do_output ('loa, 21224, 32,99) o b.do_output (' loa ', 32,99, 21224) o c. do_output ('loa', chi phí = 32,99, sản phẩm_id = 21224) o d. DO_OUTPUT (Product_id = 21224, Product_Name = 'loa', chi phí = 32,99) Câu 10 Câu nào sử dụng hàm Square () để gán variablet với 16? Lưu ý rằng 16 = 2 4 = (22) 2 bình phương def (x): trả về x*x o a. t = vuông (vuông (2)) ob.t = vuông (2) + vuông (2) oct = vuông (2), vuông (2) odt = vuông (4) * vuông (2)

Trong Python, chúng tôi không tuyên bố và chỉ định loại biến, chúng tôi trực tiếp gán giá trị cho biến. Mặc dù chúng tôi không chỉ định loại biến trong Python, nhưng chúng tôi không thể thực hiện các hoạt động toán học giữa các biến số số nguyên và biến của chuỗi loại. Bây giờ câu hỏi phát sinh, làm thế nào Python phân biệt các loại biến?

Trong các bài viết ngắn này, tôi sẽ cố gắng trả lời hai câu hỏi:

  1. Tại sao chúng ta không cần phải xác định các loại biến trước khi sử dụng nó trong Python?
  2. Làm thế nào Python gán loại cho biến?

Để hiểu câu trả lời của câu hỏi đầu tiên, trước tiên bạn cần hiểu ngôn ngữ gõ và gõ động tĩnh.

Trong các thuật ngữ đơn giản, trong ngôn ngữ được đánh máy tĩnh (ở đây loại đề cập đến kiểu dữ liệu), loại biến được kiểm tra tại thời điểm biên dịch trong khi trong kiểm tra loại ngôn ngữ được đánh máy động được thực hiện tại thời gian chạy. Do đó, ngôn ngữ được đánh máy tĩnh như Java, C, C ++, chúng ta cần khai báo các biến và kiểu dữ liệu của nó trước khi gán giá trị cho nó.Python là ngôn ngữ được đánh máy động và do đó, kiểm tra loại được thực hiện tại thời gian chạy.

Vì Python là ngôn ngữ được đánh máy động, trình thông dịch Python tự động liên kết loại với biến của nó, do đó, chúng tôi không cần xác định các loại biến trước khi sử dụng. Bây giờ, câu trả lời của câu hỏi đầu tiên là khá rõ ràng. Hãy để cố gắng hiểu câu trả lời của câu hỏi thứ hai với sự trợ giúp của ví dụ nhỏ:

>>> a = 15

Ở đây, chúng tôi chỉ đơn giản là tạo một biến ‘A, với giá trị 15. Thông dịch viên sẽ thực hiện các bước sau:

  1. Thông dịch viên trước tiên sẽ kiểm tra xem 15 là chữ số và nó cũng không có dấu thập phân, do đó nó sẽ tạo ra đối tượng của lớp ‘int, bằng cách sử dụng metaclass. Metaclasses là lớp của lớp xác định cách thức hoạt động của lớp. Nó có thể là một chút khó hiểu, theo thuật ngữ đơn giản, Metaclasses chỉ là những thứ tạo ra đối tượng của lớp.
  2. Bây giờ trình thông dịch sẽ lưu trữ đối tượng này trong địa chỉ bộ nhớ và địa chỉ bộ nhớ (tham chiếu) của đối tượng này sẽ được lưu trữ trong biến ‘A. Trong ngôn ngữ gõ động, các biến là các tham chiếu đến các đối tượng.

Chúng ta có thể lấy địa chỉ bộ nhớ của đối tượng bằng cách sử dụng id (). Ví dụ,

>>> id(a)
1435266512

Chúng ta có thể nhận được loại biến với loại ().

>>> type(a)

Conclusion:

Python là ngôn ngữ được đánh máy động và do đó nó tự động liên kết loại với biến của nó. Python tạo ra đối tượng thuộc loại sẵn có với sự trợ giúp của các metaclass. Các biến chứa các tham chiếu đến các đối tượng.

Thư viện pandas python là gì? Nó có thể giúp bạn những gì và làm sao để sử dụng thư viện pandas này trong lập trình python. Hãy cùng tôi đi tìm câu trả lời cho các câu hỏi trên trong bài viết ngày hôm nay. Tôi tin rằng đây là một bài viết cực kỳ hữu ích. Nó chắc chắn sẽ đem lại cho các bạn nhiều kiến thức bổ ích và làm chủ được cách sử dụng thư viện này.

Nội dung chính

  • Đọc file csv sử dụng thư viện pandas
  • Thao tác với dataframe trong pandas
  • Xem thông tin của dataframe
  • Truy xuất dữ liệu trên dataframe
  • Thêm, sửa, xóa trong dataframe
  • Hiểu dữ liệu trong dataframe
  • Tạo mới dataframe
  • Tạo mới dataframe từ python dictionary
  • Tạo mới dataframe từ các python list
  • Một số thao tác khác trên dataframe
  • Sắp xếp dataframe
  • Nối 2 dataframe
  • Xáo trộn các bản ghi trong dataframe
  • Lưu dataframe về file csv
  • Tài liệu tham khảo

Pandas cookbook – https://github.com/jvns/pandas-cookbook

Thư viện pandas trong python là một thư viện mã nguồn mở, hỗ trợ đắc lực trong thao tác dữ liệu. Đây cũng là bộ công cụ phân tích và xử lý dữ liệu mạnh mẽ của ngôn ngữ lập trình python. Thư viện này được sử dụng rộng rãi trong cả nghiên cứu lẫn phát triển các ứng dụng về khoa học dữ liệu. Thư viện này sử dụng một cấu trúc dữ liệu riêng là Dataframe. Pandas cung cấp rất nhiều chức năng xử lý và làm việc trên cấu trúc dữ liệu này. Chính sự linh hoạt và hiệu quả đã khiến cho pandas được sử dụng rộng rãi.

Tại sao lại là thư viện pandas?

  • DataFrame đem lại sự linh hoạt và hiệu quả trong thao tác dữ liệu và lập chỉ mục;
  • Là một công cụ cho phép đọc/ ghi dữ liệu giữa bộ nhớ và nhiều định dạng file: csv, text, excel, sql database, hdf5;
  • Liên kết dữ liệu thông minh, xử lý được trường hợp dữ liệu bị thiếu. Tự động đưa dữ liệu lộn xộn về dạng có cấu trúc;
  • Dễ dàng thay đổi bố cục của dữ liệu;
  • Tích hợp cơ chế trượt, lập chỉ mục, lấy ra tập con từ tập dữ liệu lớn.
  • Có thể thêm, xóa các cột dữ liệu;
  • Tập hợp hoặc thay đổi dữ liệu với group by cho phép bạn thực hiện các toán tử trên tập dữ liệu;
  • Hiệu quả cao trong trộn và kết hợp các tập dữ liệu;
  • Lập chỉ mục theo các chiều của dữ liệu giúp thao tác giữa dữ liệu cao chiều và dữ liệu thấp chiều;
  • Tối ưu về hiệu năng;
  • Pandas được sử dụng rộng rãi trong cả học thuật và thương mại. Bao gồm thống kê, thương mại, phân tích, quảng cáo,…

Bây giờ chúng ta sẽ bắt đầu học cách sử dụng thư viện pandas python. Nhưng trước khi bắt đầu, hãy import thư viện pandas nhé. Chúng ta sẽ dùng cả thư viện matplotlib nữa.

Nếu bạn chưa biết về thư viện matplotlib, hãy đọc bài viết này trước nhé.

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random

Đọc file csv sử dụng thư viện pandas

Bạn có thể dễ dàng đọc vào một file .csv bằng cách sử dụng hàm

peoples_df = pd.read_csv('./people.csv')
2 và được trả về 1 dataframe. Mặc định, hàm này sẽ phân biệt các trường của file csv theo dấu phẩy. Cách đọc hết sức đơn giản như sau:

peoples_df = pd.read_csv('./people.csv')

Bạn có thể in ra n bản ghi đầu tiên của dataframe sử dụng hàm

peoples_df = pd.read_csv('./people.csv')
3. Ngược lại của hàm
peoples_df = pd.read_csv('./people.csv')
3 là hàm
peoples_df = pd.read_csv('./people.csv')
5

peoples_df.head(5)

Kết quả in ra như sau:

Tuy nhiên, bạn cũng sẽ phải lưu ý một vài tham số của hàm

peoples_df = pd.read_csv('./people.csv')
2 như:

  • encoding: chỉ định encoding của file đọc vào. Mặc định là utf-8.
  • sep: thay đổi dấu ngăn cách giữa các cột. Mặc định là dấu phẩy (‘,’)
  • header: chỉ định file đọc vào có header(tiêu đề của các cột) hay không. Mặc định là infer.
  • index_col: chỉ định chỉ số cột nào là cột chỉ số(số thứ tự). Mặc định là None.
  • n_rows: chỉ định số bản ghi sẽ đọc vào. Mặc định là None – đọc toàn bộ.

Ví dụ:

peoples_df = pd.read_csv('./people.csv', encoding='utf-8', header=None, sep=',')
peoples_df.head(5)

Khi tôi chỉ định không có header, dòng header của chúng ta đã biến thành 1 bản ghi dữ liệu:

Bạn đọc có thể xem mô tả đầy đủ từng tham số của hàm

peoples_df = pd.read_csv('./people.csv')
2 của thư viện pandas python tại đây.

Thao tác với dataframe trong pandas

Xem thông tin của dataframe

Bạn có thể xem thông tin của dataframe vừa đọc vào bằng cách sử dụng hàm

peoples_df = pd.read_csv('./people.csv')
8 hoặc xem kích thước của dataframe này với thuộc tính
peoples_df = pd.read_csv('./people.csv')
9. Cụ thể như sau:

# Xem chiều dài của df, tương đương shape[0]
print('Len:', len(peoples_df))
# Xem thông tin dataframe vừa đọc được
peoples_df.info()
# Xem kích thước của dataframe
print('Shape:', peoples_df.shape)

Và kết quả thu được là:

Len: 40

RangeIndex: 40 entries, 0 to 39
Data columns (total 11 columns):
person_ID    40 non-null int64
name         40 non-null object
first        40 non-null object
last         40 non-null object
middle       15 non-null object
email        40 non-null object
phone        40 non-null object
fax          40 non-null object
title        40 non-null object
age          40 non-null int64
is_young     40 non-null bool
dtypes: bool(1), int64(2), object(8)
memory usage: 3.2+ KB
Shape: (40, 11)

Truy xuất dữ liệu trên dataframe

Lấy 1 cột theo tên cột

Để chỉ định cột muốn lấy, bạn chỉ cần truyền vào tên cột như sau:

peoples_df['name']

Lấy theo nhiều cột

Thay vì truyền vào 1 string thì hãy truyền vào 1 list các tên cột. Mình thêm

peoples_df.head(5)
0 để chỉ in ra 5 bản ghi đầu tiên cho ngắn, mặc định sẽ lấy hết.

>>> id(a)
1435266512
0

Lấy bản ghi theo chỉ số

Để lấy một hoặc nhiều bản ghi liên tiếp trong dataframe, sử dụng cơ chế trượt theo chỉ số giống như trên list trong python. Lấy 5 bản ghi đầu tiên:

>>> id(a)
1435266512
1

Trong trường hợp này kết quả giống như hàm head phía trên. Đều là lấy 5 bản ghi đầu tiên.

Bạn cũng có thể kết hợp lấy theo hàng và cột mong muốn:

>>> id(a)
1435266512
2

Lấy các bản ghi theo điều kiện

>>> id(a)
1435266512
3

Một ví dụ khác: Lấy tất cả các bản ghi chứa thông tin của người có chức danh là giáo sư:

>>> id(a)
1435266512
4

Hoặc 1 ví dụ so sánh chuỗi như sau:

>>> id(a)
1435266512
5

Kết quả thu được là một dataframe có 1 cột chưa 2 giá trị True hoặc False

>>> id(a)
1435266512
6

Lấy giá trị trả về numpy arrays

Để lấy giá trị của một cột trả về dưới dạng numpy array trong thư viện pandas python, bạn chỉ cần thêm

peoples_df.head(5)
1 vào sau, ví dụ:

>>> id(a)
1435266512
7

Output bạn thu được như sau:

>>> id(a)
1435266512
8

Nếu bạn quan tâm tới numpy array, hãy tìm đọc bài hướng dẫn về numpy

Thêm, sửa, xóa trong dataframe

Thêm cột từ dữ liệu mới

Để thêm cột vào một dataframe có sẵn. Trước tiên, bạn cần có 1 list dữ liệu tương ứng với cột mà bạn muốn thêm. Tức là chiều dài của list phải tương ứng với số bản ghi của dataframe bạn muốn thêm.

Ở đây, tôi sẽ sử dụng thư viện random để sinh ngẫu nhiên một list năm sinh và thêm vào dataframe như sau:

>>> id(a)
1435266512
9

Thêm cột dựa vào dữ liệu đã có

Giả sử ở đây mình muốn thêm cột

peoples_df.head(5)
2 có giá trị
peoples_df.head(5)
3 nếu tuổi < 25 và
peoples_df.head(5)
4 trong trường hợp còn lại.

>>> type(a)
0

Khởi tạo cột mới có giá trị rỗng

Sử dụng cú pháp đơn giản như dưới đây, bạn sẽ có một trường mới và tất cả các giá trị là

peoples_df.head(5)
5

>>> type(a)
1

Thêm bản ghi trong dataframe

Về vấn đề thêm bản ghi, chúng ta thường ít khi sử dụng nên tôi sẽ không trình bày. Bạn đọc quan tâm có thể đọc thêm tại tài liệu này

Sửa giá trị của cột

Để sửa giá trị của 1 cột, bạn làm tương tự như thêm mới cột. Nhưng khác với thêm ở chỗ là tên cột bạn truyền vào đã có trong dataframe. Còn thêm là 1 tên trường mới hoàn toàn chưa có. Chẳng hạn, bạn muốn thay đổi trường

peoples_df.head(5)
6, bạn chỉ cần làm như sau:

>>> type(a)
2

Xóa cột trong dataframe

Bạn có thể sử dụng một trong các cách sau:

>>> type(a)
3

Xóa bản ghi theo chỉ số

>>> type(a)
4

Hiểu dữ liệu trong dataframe

Thư viện pandas python cung cấp cho bạn một số hàm giúp bạn hiểu về cấu trúc, phân bố của dữ liệu. Dưới đây là cách để bạn khám phá và hiểu dữ liệu của mình.

Tôi đã bổ sung trường

peoples_df.head(5)
7 vào file people.csv và tiến hành đọc lại.

>>> type(a)
5
>>> type(a)
6

Sử dụng hàm

peoples_df.head(5)
8 cho bạn các thống kê cơ bản về dữ liệu:

>>> type(a)
7

Xem thống kê cụ thể hơn trên từng cột như sau:

>>> type(a)
8
>>> type(a)
9

Bạn cũng có thể vẽ đồ thị xem phân bố giá trị của một trường trong dataframe như sau:

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random
0

Tạo mới dataframe

Có một vài cách để tạo ra dataframe trong thư viện pandas python. Bạn có thể dùng cách mà bạn cho là dễ sử dụng, đôi khi cũng phải tùy vào từng trường hợp mà nên chọn cách nào nữa.

Tạo mới dataframe từ python dictionary

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random
1

Bạn sẽ có 1 dataframe như sau:

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random
2

Tạo mới dataframe từ các python list

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random
3

Và dataframe mà bạn sẽ thu được là:

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random
4

Lưu ý: các list này phải có cùng kích thước. các list này phải có cùng kích thước.

Một số thao tác khác trên dataframe

Sắp xếp dataframe

Với thư viện pandas python, bạn có thể sắp xếp dataframe tăng dần, hay giảm dần theo 1 hoặc nhiều cột chỉ định.

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random
5

Kết quả thu được như sau:

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random
6

Bạn có thể sắp xếp theo nhiều cột có độ ưu tiên giảm dần, bằng cách truyền vào list tên cột. Ví dụ:

peoples_df.head(5)
9

Nối 2 dataframe

Bạn có thể nối 2 dataframe thành 1 dataframe mới bằng cách sử dụng hàm

peoples_df = pd.read_csv('./people.csv', encoding='utf-8', header=None, sep=',')
peoples_df.head(5)
0 của thư viện pandas.

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random
7

Kết quả:

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random
8

Xáo trộn các bản ghi trong dataframe

Trong xử lý dữ liệu, bạn chắc chắn sẽ cần tới việc xáo trộn dữ liệu. Rất may, thư viện pandas có thể giúp chúng ta làm việc đó.

# Render our plots inline
%matplotlib inline

import pandas as pd
import matplotlib.pyplot as plt
import random
9

Kết quả(Có thể khác nhau nhé – xáo trộn mà)

peoples_df = pd.read_csv('./people.csv')
0

Giải thích thêm:

  • frac: Chỉ định số bản ghi sẽ trả về ở mỗi lần random. Nếu bằng 1, tức là random ngẫu nhiên tất cả các bản ghi.
  • .reset_index(): Sắp xếp lại cột chỉ số của dataframe.
  • drop:với giá trị True, nó sẽ ngăn không cho hàm reset_index tạo cột mới từ cột chỉ số của dataframe ban đầu.

Lưu dataframe về file csv

Thư viện pandas python cho phép bạn lưu lại dataframe chỉ với một dòng code. Quá đơn giản phải không nào?

peoples_df = pd.read_csv('./people.csv')
1

Bạn có thể mở file để xem kết quả lưu:

Các tham số của hàm

peoples_df = pd.read_csv('./people.csv', encoding='utf-8', header=None, sep=',')
peoples_df.head(5)
1 khá tương tự với hàm
peoples_df = pd.read_csv('./people.csv')
2. Bạn đọc có thể xem thêm thông tin đầy đủ của hàm này tại đây.

Tới đây mình xin kết thúc bài hướng dẫn về thư viện pandas python. Qua bài viết này, tôi tin chắc bạn đã có được những kiến thức cần thiết và có thể làm chủ thư viện pandas trong python. Bạn cũng có thể xem một ví dụ thực tế sử dụng thư viện này tại bài viết code thuật toán linear regression này.

Tài liệu tham khảo

  1. Pandas cookbook – https://github.com/jvns/pandas-cookbook
  2. Official document – https://pandas.pydata.org/index.html

Bài viết gốc được đăng tại Blog cá nhân của tôi.