Python 以不同方式存储的文本数据
我的问题是我有两个值应该是相同的,但是他们有这个奇怪的差异,我不知道它来自哪里 上下文是我使用pd.read\u csv导入了3个文件。我使用groupby对值进行分组,使用一些日期字段,并使用nunique对有问题的变量进行聚合,只是为了记录计数 然后,使用Tableau,它实际上统计了不同数量的唯一记录。我发现一对熊猫说的是不同的记录,而Tableau则认为它们是平等的 看一看:Python 以不同方式存储的文本数据,python,pandas,tableau-api,Python,Pandas,Tableau Api,我的问题是我有两个值应该是相同的,但是他们有这个奇怪的差异,我不知道它来自哪里 上下文是我使用pd.read\u csv导入了3个文件。我使用groupby对值进行分组,使用一些日期字段,并使用nunique对有问题的变量进行聚合,只是为了记录计数 然后,使用Tableau,它实际上统计了不同数量的唯一记录。我发现一对熊猫说的是不同的记录,而Tableau则认为它们是平等的 看一看: df A 0 100000306 1 100000306 x1 = df.iloc
df
A
0 100000306
1 100000306
x1 = df.iloc[0,0]
str(x1.values)
"['100000306']"
x2 = df.iloc[1,0]
str(x2.values)
'[100000306]'
为什么会发生这种情况?我该怎么做才能让熊猫知道它们是相同的值?欢迎来到Stackoverflow 我不确定您对数据执行了哪些其他处理步骤,但[0,0]中存储的值似乎是字符串
'10000306'
,而不是整数10000006
。您所能做的就是尽可能地将列中的值转换为浮点值
df['A'] = pd.to_numeric(df['A'])
欢迎来到Stackoverflow 我不确定您对数据执行了哪些其他处理步骤,但[0,0]中存储的值似乎是字符串
'10000306'
,而不是整数10000006
。您所能做的就是尽可能地将列中的值转换为浮点值
df['A'] = pd.to_numeric(df['A'])
在一列中有不同的类型
df.applymap(type)
A
0 <class 'str'>
1 <class 'int'>
在一列中有不同的类型
df.applymap(type)
A
0 <class 'str'>
1 <class 'int'>