Python 如何在数据帧中将2个双引号替换为单引号?
我试图将两个双引号替换为单引号。你能帮帮我吗 例如: “我的名字叫希瓦姆。” 预期产出:Python 如何在数据帧中将2个双引号替换为单引号?,python,python-3.x,regex,pandas,dataframe,Python,Python 3.x,Regex,Pandas,Dataframe,我试图将两个双引号替换为单引号。你能帮帮我吗 例如: “我的名字叫希瓦姆。” 预期产出: "My name is shivam." 我认为问题是在将此数据帧保存到csv文件时出现的。就数据帧而言,它是正确的。也许您可以使用replace方法 string = '""My name is shivam.""' string = string.replace('""','"') print(string)
"My name is shivam."
我认为问题是在将此数据帧保存到csv文件时出现的。就数据帧而言,它是正确的。也许您可以使用replace方法
string = '""My name is shivam.""'
string = string.replace('""','"')
print(string)
如果它在列中,请尝试
df['column'] = df['column'].str.replace('""','"')
也许您可以使用replace方法
string = '""My name is shivam.""'
string = string.replace('""','"')
print(string)
如果它在列中,请尝试
df['column'] = df['column'].str.replace('""','"')
对于所有列,只需运行:
df = df.apply(lambda s:s.replace('(")(")','"', regex=True))
对于所有列,只需运行:
df = df.apply(lambda s:s.replace('(")(")','"', regex=True))
试试看
df[column_name].replace('""','"',regex=True)
对于多列
df.replace('""','"',regex=True)
试试看
df[column_name].replace('""','"',regex=True)
对于多列
df.replace('""','"',regex=True)
IIUC,您可以尝试用第一个实例替换捕获组
print(s)
0 ""My name is shivam.""
1 Shivan
2 "Shivan"
s1 = s.replace('(")(")',r'\1',regex=True)
print(s1)
0 "My name is shivam."
1 Shivan
2 "Shivan"
IIUC,您可以尝试将捕获组替换为其第一个实例
print(s)
0 ""My name is shivam.""
1 Shivan
2 "Shivan"
s1 = s.replace('(")(")',r'\1',regex=True)
print(s1)
0 "My name is shivam."
1 Shivan
2 "Shivan"
为了清楚起见,如果我将该字符串放入变量中,它将是:
““我的名字是shivam。”“
”,您希望它变成““我的名字是shivam。””
?请提供有关该问题的更多上下文。那个字符串出现在哪里?文件?是,它是一列值。大多数列.df.replace({'\'':'''''},regex=True)都会出现这种情况,如果我将该字符串放入一个变量中,它将是:“”“我的名字是shivam。”“
您希望它变成””我的名字是shivam。“
?请提供有关此问题的更多上下文。那个字符串出现在哪里?文件?是,它是一列值。大多数列.df.replace({'\'':''''''},regex=True)都会出现这种情况很好的解决方案,只是一个平头,inplace会被折旧。请现在检查。谢谢。很好的解决方案,只是一个平头,inplace会被折旧。请现在检查。谢谢。它出现在大多数列中。而不是在单个列中。然后直接使用df.replace()但是,在保存到文件中时,它再次以两个双引号出现。您是否正在使用新生成的数据框对象更新数据框对象,如下面所示?df=df.replace(“”“”,““”,regex=True)或df.replace(“”“”,“”,regex=True,inplace=True),它出现在大多数列中。而不是单列中。然后直接使用df.replace()但是,在保存到文件中时,它再次以两个双引号出现。您是否使用新生成的数据框对象更新数据框对象,如下面所示?df=df.replace(''''''',''''',regex=True)或df.replace('''''',''',regex=True,inplace=True)