Hướng dẫn how do you convert a column of objects to a string in python? - làm thế nào để bạn chuyển đổi một cột đối tượng thành một chuỗi trong python?

Khi tôi đọc một tệp CSV cho Pandas DataFrame, mỗi cột được chuyển vào các kiểu dữ liệu của riêng nó. Tôi có một cột đã được chuyển đổi thành một đối tượng. Tôi muốn thực hiện các hoạt động chuỗi cho cột này, chẳng hạn như chia các giá trị và tạo danh sách. Nhưng không có hoạt động nào như vậy là có thể vì DTYPE của nó là đối tượng. Bất cứ ai có thể vui lòng cho tôi biết cách chuyển đổi tất cả các mục của một cột thành chuỗi thay vì các đối tượng?

Tôi đã thử nhiều cách nhưng không có gì làm việc. Tôi đã sử dụng astype, str (), to_string, v.v.

a=lambda x: str(x).split(',')
df['column'].apply(a)

hoặc

df['column'].astype(str)

Hướng dẫn how do you convert a column of objects to a string in python? - làm thế nào để bạn chuyển đổi một cột đối tượng thành một chuỗi trong python?

cs95

352K87 Huy hiệu vàng646 Huy hiệu bạc698 Huy hiệu Đồng87 gold badges646 silver badges698 bronze badges

Đã hỏi ngày 27 tháng 11 năm 2015 lúc 12:43Nov 27, 2015 at 12:43

2

Vì các loại dữ liệu chuỗi có độ dài thay đổi, nên theo mặc định được lưu trữ dưới dạng đối tượng DTYPE. Nếu bạn muốn lưu trữ chúng dưới dạng loại chuỗi, bạn có thể làm một cái gì đó như thế này.

df['column'] = df['column'].astype('|S80') #where the max length is set at 80 bytes,

Hay cách khác

df['column'] = df['column'].astype('|S') # which will by default set the length to the max len it encounters

Đã trả lời ngày 22 tháng 6 năm 2017 lúc 23:10Jun 22, 2017 at 23:10

Siraj S.Siraj S.Siraj S.

3.1313 huy hiệu vàng28 Huy hiệu bạc44 Huy hiệu đồng3 gold badges28 silver badges44 bronze badges

4

Bạn đã thử gán nó trở lại cột chưa?

df['column'] = df['column'].astype('str') 

Đề cập đến câu hỏi này, gấu trúc DataFrame lưu trữ các con trỏ cho các chuỗi và do đó nó thuộc loại 'đối tượng'. Theo tài liệu, bạn có thể thử:

df['column_new'] = df['column'].str.split(',') 

Đã trả lời ngày 27 tháng 11 năm 2015 lúc 12:51Nov 27, 2015 at 12:51

Hướng dẫn how do you convert a column of objects to a string in python? - làm thế nào để bạn chuyển đổi một cột đối tượng thành một chuỗi trong python?

5

Không trả lời trực tiếp câu hỏi, nhưng nó có thể giúp người khác.

Tôi có một cột gọi là

df['column'] = df['column'].astype('|S80') #where the max length is set at 80 bytes,
2, có cả
df['column'] = df['column'].astype('|S80') #where the max length is set at 80 bytes,
3 (không hợp lệ/NAN) và các số được định dạng với
df['column'] = df['column'].astype('|S80') #where the max length is set at 80 bytes,
4

df['Volume'] = df['Volume'].astype('str')
df['Volume'] = df['Volume'].str.replace(',', '')
df['Volume'] = pd.to_numeric(df['Volume'], errors='coerce')

Đúc vào chuỗi là bắt buộc để nó áp dụng cho str.replace for it to apply to str.replace

gấu trúc.series.str.replace pandas.to_numeric
pandas.to_numeric

Đã trả lời ngày 30 tháng 3 năm 2018 lúc 10:58Mar 30, 2018 at 10:58

Hướng dẫn how do you convert a column of objects to a string in python? - làm thế nào để bạn chuyển đổi một cột đối tượng thành một chuỗi trong python?

Zurfyxzurfyxzurfyx

Phù bằng vàng 29K1818 gold badges111 silver badges140 bronze badges

Bạn có thể thử sử dụng

df['column'] = df['column'].astype('|S80') #where the max length is set at 80 bytes,
5 và sau đó sử dụng bất kỳ chức năng chuỗi nào. Tài liệu gấu trúc bao gồm những người thích chia rẽ

Đã trả lời ngày 10 tháng 8 năm 2017 lúc 15:09Aug 10, 2017 at 15:09

Koshmasterkoshmasterkoshmaster

3293 Huy hiệu bạc4 Huy hiệu đồng3 silver badges4 bronze badges

2

Trong hướng dẫn phân tích dữ liệu của PANDAS ngày nay, tôi muốn bao gồm những điều cơ bản của chuyển đổi cột Python DataFrame sang các chuỗi.

Chúng tôi sẽ tập trung vào một số trường hợp sử dụng chính ở đây:

  1. Chuyển đổi các cột cụ thể thành các chuỗi bằng phương thức ASTYPE ().
  2. Xuất DataFrame sang đối tượng Chuỗi
  3. Chuyển đổi một đối tượng DateTime thành một chuỗi

Ví dụ dữ liệu

Chúng tôi sẽ bắt đầu bằng cách tạo một số dữ liệu kiểm tra để bạn theo dõi bài tập này:

#import Pandas
import pandas as pd

#Define data dictionary
cand_dict = {'office_id' : [ 'ny', 2,3],
    'city': ['nyc', 'boston', 'austin'],
              'num_candidates': [10,20,58]}

#Initialize DataFrame
candidates = pd.DataFrame(cand_dict)

Hãy cùng tìm hiểu các loại dữ liệu tương ứng của các cột DataFrame của chúng tôi:

candidates.dtypes

Kết quả sẽ là:

office_id         object
city              object
num_candidates     int64
dtype: object

Cột Office_id bao gồm cả số nguyên số và ký tự văn bản, do đó nó được gán một kiểu dữ liệu đối tượng.office_id includes both numeric integers and text characters, hence it is assigned an object data type.

Hãy để giả sử rằng chúng tôi muốn kết hợp các cột office_id và thành phố.

df['column'].astype(str)
0

Điều này sẽ đưa ra một lỗi loại, vì chúng tôi đang cố gắng kết hợp các số nguyên và chuỗi.

df['column'].astype(str)
1

Sau đó, hãy đi trước và chuyển đổi City_ID thành kiểu dữ liệu chuỗi và sau đó dễ dàng kết hợp các cột:

df['column'].astype(str)
2

Chúng tôi sẽ nhận được cột City_id trong DataFrame của chúng tôi:

office_idthành phốnum_candidatescity_id
0NYNYC10 NY_NYC
12 Boston20 2_Boston
23 Austin58 3_austin

Đối tượng DataFrame diễn viên vào chuỗi

Chúng tôi đã phát hiện ra trước đó rằng lĩnh vực thành phố đã được hiểu là một đối tượng gấu trúc. Chúng ta có thể chuyển mọi cột vào một loại dữ liệu cụ thể bằng cách truyền một từ điển của các cặp cột và các cặp DTYPE phù hợp như được tô sáng dưới đây:

df['column'].astype(str)
3

Và kết quả mà chúng tôi sẽ nhận được là:

Chuỗi thành phố num_candidates int32 dtype: đối tượng

Xuất dữ liệu gấu trúc sang các chuỗi bằng cách sử dụng to_string ()

Đây là một ví dụ:

df['column'].astype(str)
4

Chuyển đổi DateTime thành Chuỗi

Trong ví dụ tiếp theo của chúng tôi, chúng tôi sẽ sử dụng Python để biến một cột chứa các đối tượng loại DateTime thành chuỗi.

Trước tiên, chúng tôi sẽ tạo ra một số dữ liệu đơn giản:

df['column'].astype(str)
5

Sẽ trở lại:

df['column'].astype(str)
6

Bây giờ chúng ta có thể sử dụng phương thức ASTYPE như được hiển thị ở trên để trả về một chuỗi.

df['column'].astype(str)
7

Lưu ý rằng việc chuyển đổi thành các chuỗi won đã được duy trì trong khung dữ liệu gốc của bạn. Bạn có thể dễ dàng duy trì các thay đổi của mình bằng cách tạo một DataFrame mới:

df['column'].astype(str)
8

Thay đổi định dạng DateTime và chuyển đổi thành chuỗi

Trong ví dụ tiếp theo, chúng tôi chỉ cần tiếp tục và sửa đổi định dạng của cột DateTime bằng cách sử dụng srftime fomatter. Trong ví dụ này, chúng tôi sẽ sử dụng dữ liệu mà trước đây chúng tôi đã tạo.srftime fomatter. In this example we’ll use the data that we have previously generated.

df['column'].astype(str)
9

Chúng tôi sẽ nhận được kết quả sau

Hướng dẫn how do you convert a column of objects to a string in python? - làm thế nào để bạn chuyển đổi một cột đối tượng thành một chuỗi trong python?

Theo cách tương tự, bạn có thể sửa đổi giá trị DateTime thành các định dạng khác, bao gồm nhiều năm, tháng, ngày, giờ, phút và vv.

Ví dụ về đổi tên cột DataFrame

Một yêu cầu chung là đổi tên một cột sau khi nó được chuyển thành một loại dữ liệu mới. Dưới đây là một đoạn trích nhanh mà bạn có thể sử dụng làm ví dụ:

df['column'] = df['column'].astype('|S80') #where the max length is set at 80 bytes,
0

Chuyển đổi cột gấu trúc thành int

Một vài độc giả đã hỏi về một quy trình đơn giản để chuyển đổi một cột chứa dữ liệu số từ chuỗi sang các loại số nguyên. Muốn chỉ cho bạn hướng dẫn này giúp hiểu cách đúc các cột vào int trong gấu trúc.

Ý chính của nó chỉ đơn giản là sử dụng phương thức ASTYPE trên cột DataFrame cụ thể, trong trường hợp của chúng tôi:

df['column'] = df['column'].astype('|S80') #where the max length is set at 80 bytes,
1

Làm cách nào để chuyển đổi một cột thành một chuỗi trong Python?

Chuyển đổi tất cả các cột thành chuỗi Nếu bạn muốn thay đổi kiểu dữ liệu cho tất cả các cột trong DataFrame thành loại chuỗi, bạn có thể sử dụng các phương thức DF.ApplyMap (Str) hoặc DF.Asype (Str).df. applymap(str) or df. astype(str) methods.

Làm cách nào để chuyển đổi một đối tượng thành một chuỗi trong Python?

Chuyển đổi đối tượng thành chuỗi mọi thứ là một đối tượng trong Python.Vì vậy, tất cả các đối tượng tích hợp có thể được chuyển đổi thành các chuỗi bằng các phương thức str () và repr ().using the str() and repr() methods.

Làm thế nào để bạn chuyển đổi một kiểu dữ liệu cột trong Python?

to_numeric () Phương thức này được sử dụng để chuyển đổi kiểu dữ liệu của cột thành mẫu số.Do đó, float64 hoặc int64 sẽ được trả về dưới dạng loại dữ liệu mới của cột dựa trên các giá trị trong cột. This method is used to convert the data type of the column to the numerical one. As a result, the float64 or int64 will be returned as the new data type of the column based on the values in the column.

Làm cách nào để trích xuất một chuỗi từ một cột trong Python?

Chúng ta có thể lặp qua phạm vi của cột và tính toán chuỗi con cho từng giá trị trong cột.Ví dụ 2: Trong ví dụ này, chúng ta sẽ sử dụng str.lát cắt() .Ví dụ 3: Chúng tôi cũng có thể sử dụng Str accessor theo một cách khác bằng cách sử dụng dấu ngoặc vuông.loop through the range of the column and calculate the substring for each value in the column. Example 2: In this example we'll use str. slice() . Example 3: We can also use the str accessor in a different way by using square brackets.