我有以下数据框:
(Index) sample reads yeasts
9 CO ref 10
10 CO raai 20
11 CO tus 30
我想根据sample
预期的输出更改列的顺序:
(Index) sample reads yeasts
9 CO ref 10
11 CO tus 30
10 CO raai 10
我对行的索引不感兴趣。
我已经尝试过以下基于其他stackoverflow / google帖子的代码:
df=df.reindex(["CO ref","CO tus","CO raai"])
这样可以正确地更改索引,但是其他所有列都可以获取值 nan
我也尝试过:
df.index=["CO ref","CO tus","CO raai"]
这样可以正确更改索引,但其他列不会切换,因此会弄乱数据框。
也:
df["sample"].index=["CO ref","CO tus","CO raai"]
但这无济于事。
我该如何工作?
对于reindex
需要创建索引sample
列:
df=df.set_index(['sample']).reindex(["CO ref","CO tus","CO raai"]).reset_index()
或使用有序分类:
cats = ["CO ref","CO tus","CO raai"]
df['sample'] = pd.CategoricalIndex(df['sample'], ordered=True, categories=cats)
df = df.sort_values('sample')
问题内容: 我正在使用SQL数据库,我有一列名为“价格”。创建数据库后,将“价格”列设置为“我”,需要将其类型更改为不丢失数据库中的数据。这应该通过SQL脚本来完成 我想到了创建一个新列,将数据移到其中,删除旧列,然后重命名新创建的列。 有人可以帮我举个例子吗?在SQL中也有一个函数可以将字符串解析为十进制? 谢谢 问题答案: 您无需添加新列两次,只需在更新新列后删除旧列即可: 请注意,如果不是数
问题内容: 有没有一种方法可以根据我的个人喜好(即不按字母或数字排序,而是更像遵循某些约定)对熊猫数据框中的列进行重新排序? 简单的例子: 产生这个: 但是,我想这样: (请提供通用解决方案,而不是针对此情况。非常感谢。) 问题答案: 只需输入列名称即可自己选择订单。请注意双括号:
我想使用两列作为行ID,同时计算基于时间的分组。请看下图: 转化成这样: 正在发生的是,X在时间10发生了0次,但在15和23发生了1次。 Y在10点钟发生了3次,但在15和23没有。等等。
问题内容: 我正在使用json模块创建一个包含类似条目的文件 但是,在创建的-file文件中,字段顺序错误 这是一个问题,因为-strings的替换现在不正确。 如何强制功能保持给定顺序? 问题答案: 像其他答案正确指出的那样,在Python 3.6之前,字典是 无序的 。 就是说,JSON还应该具有 _无序_映射,因此原则上在JSON中存储有序字典没有多大意义。具体来说,这意味着在读取JSON对
问题内容: 有没有一种方法可以从Pandas的DataFrame中选择随机行。 在R中,使用汽车包装,有一个有用的功能,它类似于head,但在此示例中,从x中随机选择10行。 我也看过切片文档,似乎没有什么等效的。 现在使用版本20。有一个示例方法。 问题答案: 像这样吗 注: 由于熊猫v0.20.0的, 已被弃用,赞成基于标签索引。
问题内容: 我有两个看起来像这样的数据框: 现在,如果我利用pandas .isin函数,我可以做一些漂亮的事情 列和from存在于while中不 我的问题是:是否有人知道为df_2中但不存在于df_1中的列返回列标签的方法 像这样的东西 先感谢您! 问题答案: 熊猫索引对象具有类似集合的属性,因此您可以直接执行以下操作: 您还可以使用运算符来计算交集,并集和对称差: 过去存在差异的运算符,现已弃