[英]Python + Pandas : Update ONE column in csv based on another csv
[英]Remove space in one column in .CSV - Python/Pandas
這是我的“ new_plates.csv”的樣子-
TT59 TRI,"Black,Thomas,Mr"
HY63 YOJ,"Smith,Simon,Mr"
YY36 DPM,"Paul & Clare,Mr & Mrs"
這是Python代碼-我首先將“ plates.txt”文件轉換為“ plates.csv”文件,然后將未使用的列過濾到“ new_plates.csv”並刪除舊的“ plates.csv”。 這很好,但是我想從車牌號中刪除空格,但要保留名稱。 什么不起作用。
import os
import subprocess
import pandas
import pandas as pd
subprocess.call("sudo csvformat -t /home/pi/scripts/plates.txt >> /home/pi/scripts/plates.csv", shell=True)
f=pd.read_csv("plates.csv")
keep_col = [11,13]
new_f = f[keep_col]
new_f.to_csv("new_plates.csv", index=False)
new_f[1]= new_f[1].str.replace(" ", "")
subprocess.call("sudo rm /home/pi/scripts/plates.csv", shell=True)
print(new_f)
無法弄清楚,如何正確編寫此行
new_f[1]= new_f[1].str.replace(" ", "")
我想看起來像這樣-不含空格的車牌號
TT59TRI,"Black,Thomas,Mr"
HY63YOJ,"Smith,Simon,Mr"
YY36DPM,"Paul & Clare,Mr & Mrs"
謝謝
使用str.split().apply("".join)
例如:
df=pd.read_csv("plates.csv", names=["plates", "name"])
df["plates"] = df["plates"].str.split().apply("".join)
print(df)
輸出:
plates name
0 TT59TRI Black,Thomas,Mr
1 HY63YOJ Smith,Simon,Mr
2 YY36DPM Paul & Clare,Mr & Mrs
首先,由於熊貓也可以處理txt,因此無需將txt轉換為csv。 第二,
new_f[1] = [plate.replace(" ", "") for plate in new_f[1]]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.