Python 熊猫数据帧唯一值'L'附加到数据值



我正在运行一个作为CGI的python文件,该文件正在将CSV读取到pandas数据帧中。问题是,当我试图获取只有整数值的列的唯一值时,我会在数据值后面附加一个额外的"L"。

这是代码。

def Main():
  formData = cgi.FieldStorage()
  fileName = str(formData.getvalue('file'))
  field = str(formData.getvalue('field'))
  df = fileRead.readFile(fileName)
  unique = pd.unique(df[field])
  print unique.tolist()

这是输出:

[1L,2L,3L,4L,5L,6L,7L,8L,9L,10L,11L,12L,13L,14L,15L,16L,17L,18L,19L,20L,21L,22L,23L,24L,25L,26L,27L,28L]

这适用于具有浮点值或文本值的列。

[25.9,29.5,27.9,29.9,30.9,28.9,84.9,82.9,35.9,31.5,31.0,30.0,36.9,41.9,40.5,43.9,37.5,37.9,44.5,38.9,45.8,41.0]

顺便说一句,fileRead只是另一个将CSV读取到数据帧的文件。

df = pd.read_csv(path)

这里的"L"指的是"Long"。除了占用更多内存之外,它不应该影响您的代码。

示例:1L+2=3L

此外,与其做:

unique = pd.unique(df[field])

试试这个

unique = df.drop_duplicates('field')

最新更新