如何在pydatatable的dataframe列上设置键?

2024-04-25 22:31:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在练习如何对pydatatable的数据帧执行连接操作

第一个DT创建如下:

DT_1=dt.Frame({"title": np.array(['stat','math','stat','math','esp']),
               "score": np.array([23,43,21,50,16])})

第二个DT创建如下:

DT_2=dt.Frame({"title": np.array(['stat','esp','math','stat']),
               "price": np.array([350,450,530,430])})

我在DT_2.key = "title"上设置了一个键,因为它有重复的标题,它给出了一个键值错误:ValueError:无法设置键:值不是唯一的

我想知道在python datatable中是否对键强制唯一性?而在R datatable中,不强制唯一性,允许重复键值

有什么参考文件吗


Tags: 数据titlenpdtmatharrayframeprice
1条回答
网友
1楼 · 发布于 2024-04-25 22:31:26

键列中的值必须是唯一的,请参阅此处的文档:https://datatable.readthedocs.io/en/latest/api/frame.html#datatable.Frame.key

您可以将键列视为将帧转换为行字典,其中字典的“键”部分位于键列中,“值”部分位于所有其他列中。“键”可以由多个列组成,在这种情况下,每一行的键值是来自每个键列的值的元组

因此,datatable的键相当于pandas的索引(通过.set_index()),或者相当于SQL主键

相关问题 更多 >

    热门问题