Kiểu dữ liệu mặc định cho một đầu vào () trong Python là gì?

Sử dụng toán tử boolean

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
2 để đặt giá trị mặc định cho đầu vào trống của người dùng, e. g.
default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
3. Toán tử boolean
default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
2 sẽ trả về giá trị mặc định nếu đầu vào trống

Chúng tôi đã sử dụng toán tử boolean

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
2 để đặt giá trị mặc định cho đầu vào trống của người dùng

Biểu thức

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
6 trả về giá trị bên trái nếu đúng, ngược lại trả về giá trị bên phải

Toán tử boolean

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
2 sẽ trả về giá trị bên phải nếu giá trị bên trái là sai

Hàm

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
8 trả về một chuỗi rỗng nếu người dùng không nhập giá trị

Các chuỗi trống là sai, vì vậy nếu người dùng nhấn Enter mà không nhập giá trị, giá trị mặc định sẽ được trả về

Hàm đầu vào lấy một đối số

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
9 tùy chọn và ghi nó vào đầu ra tiêu chuẩn mà không có dòng mới ở cuối

Sau đó, hàm đọc dòng từ đầu vào, chuyển đổi nó thành chuỗi và trả về kết quả

Hàm

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
8 được đảm bảo trả về một chuỗi, ngay cả khi người dùng đã nhập một số

Dưới đây là một ví dụ đặt giá trị mặc định cho đầu vào trống của người dùng khi một số được mong đợi

default = '100'

user_input = int[input['Enter an integer: '] or default]

print[user_input]

Chúng tôi đã sử dụng lớp

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
1 để chuyển đổi chuỗi đầu vào thành một số

Toán tử

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
2 trả về giá trị mặc định nếu người dùng không nhập bất cứ thứ gì

Ngoài ra, bạn có thể sử dụng câu lệnh

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
3

Để đặt giá trị mặc định cho đầu vào trống của người dùng

  1. Sử dụng chức năng
    default = 'English'
    
    user_input = input['Enter your preferred language: ']
    
    if user_input == '':
        user_input = default
    
    print[user_input]
    
    8 để lấy đầu vào từ người dùng
  2. Sử dụng câu lệnh
    default = 'English'
    
    user_input = input['Enter your preferred language: ']
    
    if user_input == '':
        user_input = default
    
    print[user_input]
    
    3 để kiểm tra xem giá trị đầu vào có phải là chuỗi rỗng không
  3. Nếu giá trị đầu vào là một chuỗi rỗng, hãy đặt nó thành giá trị mặc định

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]

Chúng tôi đã sử dụng câu lệnh

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
3 để kiểm tra xem giá trị đầu vào có phải là chuỗi rỗng không

Nếu đúng như vậy, chúng tôi gán lại biến

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
7 thành giá trị mặc định

Cách tiếp cận này dài dòng hơn một chút, tuy nhiên, nó có thể dễ đọc hơn nếu bạn không quen thuộc với toán tử boolean

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
2

Định dạng của các cột và hàng riêng lẻ sẽ tác động đến phân tích được thực hiện trên tập dữ liệu được đọc bằng Python. Ví dụ: bạn không thể thực hiện các phép tính toán học trên một chuỗi [dữ liệu được định dạng văn bản]. Điều này có vẻ hiển nhiên, tuy nhiên đôi khi các giá trị số được đọc vào Python dưới dạng chuỗi. Trong tình huống này, khi bạn cố gắng thực hiện các phép tính trên dữ liệu số có định dạng chuỗi, bạn sẽ gặp lỗi

Trong bài học này, chúng tôi sẽ xem xét các cách để khám phá và hiểu rõ hơn về cấu trúc và định dạng dữ liệu của chúng tôi

Các loại dữ liệu

Cách thông tin được lưu trữ trong DataFrame hoặc đối tượng Python ảnh hưởng đến những gì chúng ta có thể làm với nó và cả kết quả tính toán. Có hai loại dữ liệu chính mà chúng ta sẽ khám phá trong bài học này. kiểu dữ liệu số và văn bản

Kiểu dữ liệu số

Các kiểu dữ liệu số bao gồm số nguyên và số float. Số dấu phẩy động [được gọi là số float] có dấu thập phân ngay cả khi giá trị dấu thập phân đó bằng 0. Ví dụ. 1. 13, 2. 0, 1234. 345. Nếu chúng ta có một cột chứa cả số nguyên và số dấu phẩy động, Pandas sẽ gán toàn bộ cột cho kiểu dữ liệu float để các dấu thập phân không bị mất

Một số nguyên sẽ không bao giờ có dấu thập phân. Vì vậy, nếu chúng ta muốn lưu trữ 1. 13 dưới dạng số nguyên, nó sẽ được lưu dưới dạng 1. Tương tự, 1234. 345 sẽ được lưu trữ dưới dạng 1234. Bạn sẽ thường thấy kiểu dữ liệu

surveys_df['sex'].dtype
4 trong Python viết tắt của số nguyên 64 bit. 64 đề cập đến bộ nhớ được phân bổ để lưu trữ dữ liệu trong mỗi ô, liên quan hiệu quả đến số lượng chữ số mà nó có thể lưu trữ trong mỗi “ô”. Phân bổ không gian trước thời hạn cho phép máy tính tối ưu hóa hiệu quả lưu trữ và xử lý

Kiểu dữ liệu văn bản

Kiểu dữ liệu văn bản được gọi là Chuỗi trong Python hoặc Đối tượng trong Pandas. Chuỗi có thể chứa số và/hoặc ký tự. Ví dụ: một chuỗi có thể là một từ, một câu hoặc nhiều câu. Một đối tượng Pandas cũng có thể là một tên cốt truyện như 'plot1'. Một chuỗi cũng có thể chứa hoặc bao gồm các số. Chẳng hạn, '1234' có thể được lưu trữ dưới dạng một chuỗi, cũng như '10'. 23’. Tuy nhiên, các chuỗi chứa số không thể được sử dụng cho các phép toán

Pandas và Python cơ sở sử dụng các tên hơi khác nhau cho các loại dữ liệu. Thêm về điều này là trong bảng dưới đây

Pandas TypeNative Python TypeDescriptionobjectstringDtype chung nhất. Sẽ được gán cho cột của bạn nếu cột có nhiều loại [số và chuỗi]. int64intKý tự số. 64 đề cập đến bộ nhớ được phân bổ để giữ ký tự này. float64 float Các ký tự số có số thập phân. Nếu một cột chứa số và NaN [xem bên dưới], gấu trúc sẽ mặc định là float64, trong trường hợp giá trị bị thiếu của bạn có số thập phân. datetime64, timedelta[ns]N/A [nhưng hãy xem mô-đun datetime trong thư viện chuẩn của Python] Các giá trị dùng để chứa dữ liệu thời gian. Nhìn vào những điều này cho các thí nghiệm chuỗi thời gian

Kiểm tra định dạng dữ liệu của chúng tôi

Giờ đây, chúng ta đã được trang bị kiến ​​thức cơ bản về các loại dữ liệu số và văn bản, hãy cùng khám phá định dạng dữ liệu khảo sát của chúng ta. Chúng ta sẽ làm việc với cùng một bộ dữ liệu

surveys_df['sex'].dtype
5 mà chúng ta đã sử dụng trong các bài học trước

# Make sure pandas is loaded
import pandas as pd

# Note that pd.read_csv is used because we imported pandas as pd
surveys_df = pd.read_csv["data/surveys.csv"]

Hãy nhớ rằng chúng ta có thể kiểm tra loại đối tượng như thế này

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
0

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
1

Tiếp theo, hãy xem cấu trúc dữ liệu khảo sát của chúng tôi. Trong pandas, chúng ta có thể kiểm tra loại của một cột trong DataFrame bằng cú pháp

surveys_df['sex'].dtype
6

surveys_df['sex'].dtype

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
4

Loại 'O' chỉ là viết tắt của "đối tượng" mà trong thế giới của Pandas là một chuỗi [văn bản]

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
5

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
6

Loại

surveys_df['sex'].dtype
7 cho chúng ta biết rằng Python đang lưu trữ từng giá trị trong cột này dưới dạng số nguyên 64 bit. Chúng ta có thể sử dụng lệnh
surveys_df['sex'].dtype
8 để xem kiểu dữ liệu cho từng cột trong DataFrame [tất cả cùng một lúc]

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
9

trả về

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
0

Lưu ý rằng hầu hết các cột trong dữ liệu Khảo sát của chúng tôi thuộc loại

surveys_df['sex'].dtype
7. Điều này có nghĩa là chúng là số nguyên 64 bit. Nhưng cột trọng lượng là một giá trị dấu phẩy động có nghĩa là nó chứa số thập phân. Các cột
default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
40 và
default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
41 là các đối tượng có nghĩa là chúng chứa các chuỗi

Làm việc với số nguyên và số float

Vì vậy, chúng tôi đã học được rằng máy tính lưu trữ số theo một trong hai cách. dưới dạng số nguyên hoặc dưới dạng số dấu phẩy động [hoặc số float]. Số nguyên là số chúng ta thường đếm với. Số float có phần thập phân [số thập phân]. Tiếp theo, hãy xem xét cách loại dữ liệu có thể tác động đến các hoạt động toán học trên dữ liệu của chúng ta. Phép cộng, phép trừ, phép chia và phép nhân hoạt động trên số float và số nguyên như chúng ta mong đợi

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
4

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
00

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
01

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
02

Nếu chúng ta chia một số nguyên cho một số nguyên khác, chúng ta sẽ nhận được một số float. Kết quả trên Python 3 khác với Python 2, trong đó kết quả là một số nguyên [chia số nguyên]

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
03

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
04

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
05

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
06

Chúng ta cũng có thể chuyển đổi số dấu phẩy động thành số nguyên hoặc số nguyên thành số dấu phẩy động. Lưu ý rằng Python theo mặc định sẽ làm tròn xuống khi nó chuyển đổi từ dấu phẩy động sang số nguyên

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
07

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
08

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
09

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
10

Làm việc với dữ liệu khảo sát của chúng tôi

Quay trở lại dữ liệu của chúng tôi, chúng tôi có thể sửa đổi định dạng của các giá trị trong dữ liệu của mình, nếu chúng tôi muốn. Chẳng hạn, chúng ta có thể chuyển đổi trường

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
42 thành giá trị dấu phẩy động

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
11

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
12

Thay đổi loại

Hãy thử chuyển đổi cột

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
43 thành float bằng cách sử dụng

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
13

Tiếp theo hãy thử chuyển đổi

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
44 thành một số nguyên. Có gì sai ở đây?

Thiếu giá trị dữ liệu - NaN

Điều gì đã xảy ra trong hoạt động thử thách cuối cùng? .

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
45. Nếu chúng ta nhìn vào cột
default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
44 trong dữ liệu khảo sát, chúng ta sẽ nhận thấy rằng có các giá trị NaN [Không phải là Số]. Giá trị NaN là giá trị không xác định không thể được biểu diễn bằng toán học. Ví dụ, gấu trúc sẽ đọc một ô trống trong trang tính CSV hoặc Excel dưới dạng NaN. NaN có một số thuộc tính mong muốn. nếu chúng ta tính trung bình cột
default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
44 mà không thay thế các NaN của mình, Python sẽ biết bỏ qua các ô đó

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
14

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
15

Xử lý các giá trị dữ liệu bị thiếu luôn là một thách thức. Đôi khi rất khó để biết tại sao các giá trị bị thiếu - có phải do lỗi nhập dữ liệu không? . Nếu may mắn, chúng tôi có một số siêu dữ liệu sẽ cho chúng tôi biết thêm về cách xử lý các giá trị null

Chẳng hạn, trong một số lĩnh vực, như Viễn thám, các giá trị dữ liệu bị thiếu thường được định nghĩa là -9999. Có một loạt các giá trị -9999 trong dữ liệu của bạn thực sự có thể thay đổi các phép tính số. Thông thường trong bảng tính, các ô bị bỏ trống khi không có dữ liệu. Theo mặc định, gấu trúc sẽ thay thế các giá trị bị thiếu đó bằng NaN. Tuy nhiên, bạn nên tập thói quen đánh dấu có chủ ý các ô không có dữ liệu, không có giá trị dữ liệu. Bằng cách đó, sẽ không có câu hỏi nào trong tương lai khi bạn [hoặc người khác] khám phá dữ liệu của bạn

NaN ở đâu?

Hãy khám phá thêm một chút về các giá trị NaN trong dữ liệu của chúng tôi. Sử dụng các công cụ đã học ở bài 02, chúng ta có thể tính xem có bao nhiêu hàng chứa giá trị NaN cho trọng số. Chúng tôi cũng có thể tạo một tập hợp con mới từ dữ liệu của mình chỉ chứa các hàng có giá trị trọng số > 0 [i. e. , chọn giá trị trọng số có ý nghĩa]

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
16

Chúng ta có thể thay thế tất cả các giá trị NaN bằng các số 0 bằng cách sử dụng phương pháp

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
48 [sau khi tạo một bản sao dữ liệu để không mất công]

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
17

Tuy nhiên NaN và 0 mang lại kết quả phân tích khác nhau. Giá trị trung bình khi các giá trị NaN được thay thế bằng 0 khác với khi các giá trị NaN bị loại bỏ hoặc bỏ qua một cách đơn giản

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
18

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
19

Chúng tôi có thể điền các giá trị NaN với bất kỳ giá trị nào mà chúng tôi đã chọn. Mã bên dưới điền vào tất cả các giá trị NaN với giá trị trung bình cho tất cả các giá trị trọng số

surveys_df['sex'].dtype
0

Chúng tôi cũng có thể chọn tạo một tập hợp con dữ liệu của mình, chỉ giữ các hàng không chứa giá trị NaN

Vấn đề là đưa ra quyết định có ý thức về cách quản lý dữ liệu bị thiếu. Đây là nơi chúng tôi nghĩ về cách dữ liệu của chúng tôi sẽ được sử dụng và những giá trị này sẽ tác động như thế nào đến các kết luận khoa học được đưa ra từ dữ liệu

Python cung cấp cho chúng tôi tất cả các công cụ mà chúng tôi cần để giải quyết những vấn đề này. Chúng ta chỉ cần thận trọng về cách các quyết định mà chúng ta đưa ra ảnh hưởng đến kết quả khoa học

Đếm

Đếm số lượng giá trị bị thiếu trên mỗi cột

Gợi ý

Phương pháp

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
49 cung cấp cho bạn số lượng quan sát không NA trên mỗi cột. Hãy thử tìm đến phương pháp
default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
50

Viết dữ liệu ra CSV

Chúng tôi đã học về cách sử dụng thao tác dữ liệu để có được đầu ra mong muốn. Nhưng chúng tôi cũng đã thảo luận về việc giữ dữ liệu đã được thao tác tách biệt với dữ liệu thô của chúng tôi. Một cái gì đó chúng tôi có thể quan tâm đến là chỉ làm việc với các cột có đầy đủ dữ liệu. Trước tiên, hãy tải lại dữ liệu để chúng tôi không trộn lẫn tất cả các thao tác trước đó của mình

surveys_df['sex'].dtype
1

Tiếp theo, hãy bỏ tất cả các hàng chứa giá trị bị thiếu. Chúng tôi sẽ sử dụng lệnh

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
51. Theo mặc định, dropna sẽ xóa các hàng chứa dữ liệu bị thiếu cho dù chỉ một cột

surveys_df['sex'].dtype
2

Nếu bây giờ bạn gõ

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
52, bạn sẽ thấy rằng DataFrame kết quả có 30676 hàng và 9 cột, nhỏ hơn nhiều so với 35549 hàng ban đầu

Bây giờ chúng ta có thể sử dụng lệnh

default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
53 để xuất DataFrame ở định dạng CSV. Lưu ý rằng mã bên dưới sẽ theo mặc định lưu dữ liệu vào thư mục làm việc hiện tại. Chúng tôi có thể lưu nó vào một thư mục khác bằng cách thêm tên thư mục và dấu gạch chéo trước tên tệp.
default = 'English'

user_input = input['Enter your preferred language: ']

if user_input == '':
    user_input = default

print[user_input]
54. Chúng tôi sử dụng 'index=False' để gấu trúc không bao gồm số chỉ mục cho mỗi dòng

surveys_df['sex'].dtype
3

Chúng tôi sẽ sử dụng tệp dữ liệu này sau trong hội thảo. Kiểm tra thư mục làm việc của bạn để đảm bảo CSV được viết đúng cách và bạn có thể mở nó. Nếu bạn muốn, hãy thử đưa nó trở lại Python để đảm bảo nó nhập đúng cách

Kiểu đầu vào [] trong Python là gì?

input[] – Đọc đầu vào và trả về một loại python như list, tuple, int , v.v.

Loại chức năng đầu vào mặc định là gì?

Ví dụ 3. Theo mặc định, hàm input[] lấy đầu vào của người dùng ở dạng chuỗi . Vì vậy, để lấy đầu vào ở dạng int, bạn cần sử dụng int[] cùng với hàm input. Python3.

input[] trả về kiểu dữ liệu gì?

Giá trị được trả về bởi input[] là một chuỗi . Bất kỳ kiểu dữ liệu nào cũng có thể được sử dụng để chuyển đổi nội dung của đầu vào. Ví dụ. Người dùng có thể chuyển đổi giá trị đã nhập thành một biến số nguyên.

Kiểu dữ liệu nào chúng ta phải luôn truyền cho hàm input[]?

Hàm nhập liệu cho biết người dùng nhập dữ liệu trên bàn điều khiển. Hơn nữa, chương trình chỉ thực thi tiếp khi người dùng nhập dữ liệu. Dữ liệu này sau đó có thể được lưu trữ trong một biến và có thể sử dụng nó trong chương trình bất cứ nơi nào chúng ta cần. Lưu ý - Hàm nhập luôn lấy dữ liệu đầu vào là Chuỗi .

Chủ Đề