Pandas: วิธีเพิ่มสตริงลงในแต่ละค่าในคอลัมน์


คุณสามารถใช้วิธีการต่อไปนี้เพื่อเพิ่มสตริงให้กับแต่ละค่าในคอลัมน์ของ DataFrame แพนด้า:

วิธีที่ 1: เพิ่มสตริงลงในแต่ละค่าในคอลัมน์

 df[' my_column '] = ' some_string ' + df[' my_column ']. astype (str)

วิธีที่ 2: เพิ่มสตริงลงในแต่ละค่าในคอลัมน์ตามเงื่อนไข

 #define condition
mask = (df[' my_column '] == ' A ')

#add string to values in column equal to 'A'
df. loc [mask, ' my_column '] = ' some_string ' + df[' my_column ']. astype (str)

ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติกับ Pandas DataFrame ต่อไปนี้:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

  team points assists rebounds
0 A 18 5 11
1 to 22 7 8
2 A 19 7 10
3 A 14 9 6
4 B 14 12 6
5 B 11 9 5
6 B 20 9 9
7 B 28 4 12

ตัวอย่างที่ 1: เพิ่มสตริงลงในแต่ละค่าในคอลัมน์

รหัสต่อไปนี้แสดงวิธีการเพิ่มสตริง “team_” ให้กับแต่ละค่าในคอลัมน์ ทีม :

 #add string 'team_' to each value in team column
df[' team '] = ' team_ ' + df[' team ']. astype (str)

#view updated DataFrame
print (df)

     team points assists rebounds
0 team_A 18 5 11
1 team_B 22 7 8
2 team_C 19 7 10
3 team_D 14 9 6
4 team_E 14 12 6
5 team_F 11 9 5
6 team_G 20 9 9
7 team_H 28 4 12

โปรดทราบว่ามีการเพิ่มคำนำหน้า “team_” ให้กับแต่ละค่าในคอลัมน์ ทีม แล้ว

คุณยังสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อเพิ่ม “_team” เป็นส่วนต่อท้ายแต่ละค่าในคอลัมน์ ทีม :

 #add suffix 'team_' to each value in team column
df[' team '] = df[' team ']. astype (str) + ' _team '

#view updated DataFrame
print (df)

     team points assists rebounds
0 A_team 18 5 11
1 A_team 22 7 8
2 A_team 19 7 10
3 A_team 14 9 6
4 B_team 14 12 6
5 B_team 11 9 5
6 B_team 20 9 9
7 B_team 28 4 12

ตัวอย่างที่ 2: เพิ่มสตริงลงในแต่ละค่าในคอลัมน์ตามเงื่อนไข

รหัสต่อไปนี้แสดงวิธีการเพิ่มคำนำหน้า “team_” ให้กับแต่ละค่าในคอลัมน์ ทีม โดยที่ค่าเท่ากับ “A”:

 #define condition
mask = (df[' team '] == ' A ')

#add string 'team_' to values that meet the condition
df. loc [mask, ' team '] = ' team_ ' + df[' team ']. astype (str)

#view updated DataFrame
print (df)

     team points assists rebounds
0 team_A 18 5 11
1 team_A 22 7 8
2 team_A 19 7 10
3 team_A 14 9 6
4 B 14 12 6
5 B 11 9 5
6 B 20 9 9
7 B 28 4 12

โปรดทราบว่าคำนำหน้า ‘team_’ ถูกเพิ่มให้กับค่าในคอลัมน์ ทีม ที่มีค่าเท่ากับ ‘A’ เท่านั้น

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่น ๆ ในแพนด้า:

Pandas: วิธีเลือกคอลัมน์ที่มีสตริงเฉพาะ
นุ่น: วิธีเลือกบรรทัดที่ไม่ขึ้นต้นด้วยสตริง
Pandas: วิธีตรวจสอบว่าคอลัมน์มีสตริงหรือไม่

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *