我从csv读取数据到python数据帧,并设置index_col来创建多级索引,结果如下:
SELECT d.cid,
year(getdate())-year(lastDate) as years
FROM
( SELECT c.cid,
max(s.comp_date) AS lastDate
FROM sale s
INNER JOIN item i ON s.itemnum = i.itemnum
INNER JOIN customer c ON c.cid = i.cid
GROUP BY c.cid
UNION SELECT c.cid,
max(NULL) AS lastDate
FROM customer c
LEFT OUTER JOIN item i ON c.cid = i.cid
WHERE i.cid IS NULL
GROUP BY c.cid ) d
当我使用方法' ix'使用行索引获取行,我得到不正确的结果,
import pandas as pd
import numpy as np
path1= "C:\\Users\\IBM_ADMIN\\Desktop\\ml-1m\\ZTXDMEMPEE.csv"
frame1 = pd.read_csv(path1,encoding='utf8',index_col=['MGR_CNUM','CNUM'])
frame1
答案 0 :(得分:1)
首先关闭。绝对不要将.ix
用于混合标签和整数位置选择以外的任何其他内容。选择iloc
或loc
。您的结果似乎是正确的,因为索引选择的工作方式是选择具有该索引的所有行。在这种情况下,外层指数。