我正在运行一个 python 文件作为 CGI,它正在将 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()
这是输出:
这适用于具有浮点值或文本值的列。
顺便说一句,fileRead 只是另一个将 CSV 读取到数据帧的文件。
df = pd.read_csv(path)
最佳答案
这里的“L”是指“长”。除了占用更多内存之外,它不应该影响您的代码。
例如:1L + 2 = 3L
此外,而不是做:
unique = pd.unique(df[field])
试试这个
unique = df.drop_duplicates('field')
关于python pandas数据帧唯一值将 'L'附加到数据值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31023010/