Python 以不同方式存储的文本数据

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

我的问题是我有两个值应该是相同的,但是他们有这个奇怪的差异,我不知道它来自哪里

上下文是我使用pd.read\u csv导入了3个文件。我使用groupby对值进行分组,使用一些日期字段,并使用nunique对有问题的变量进行聚合,只是为了记录计数

然后,使用Tableau,它实际上统计了不同数量的唯一记录。我发现一对熊猫说的是不同的记录,而Tableau则认为它们是平等的

看一看:

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'>