replace参数:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.replace.html
最近用Python写入PG的时候,遇到了一个错误:
psycopg2.ProgrammingError: column "Vogel's 新西兰 沃格尔黑加仑浆果麦片 400克/盒" does not exist
查看原因,发现是由于PG中不能写入单引号“ ' ”的原因所致。
这里首先要说明一下,如果直接用replace替换,并不会对原来的df做出改变,因此这样是无效的
df.replace(" ' ","")
但是我在用replace替换后,发现结果依然没有改变,错误依旧
df = df.replace("'","")
查询原因发现是因为如果直接用raplace的话,是默认将所有单引号“ ' ”字段,替换为“”,而不是识别并替换包含单引号的字段。
因此,这里我们需要引入先将各个字段转化成字符串,之后再进行替换即可。
df = df.str.replace("'","")
这样就完成了字符串中单引号的替换了。