当前位置: 首页 > 面试题库 >

Pandas:创建数据框时不按字母顺序自动排序列名

寇宏义
2023-03-14
问题内容

我正在创建一个初始的熊猫数据框,以存储从其他代码生成的结果:例如

result = pd.DataFrame({'date': datelist, 'total': [0]*len(datelist), 
                       'TT': [0]*len(datelist)})

datelist预定义的列表。然后其他代码将为每个代码输出一些数字,total并将它们存储在数据框中。TT``date``result

所以我希望第一列是date第二列total和第三列TT。然而,大熊猫将自动按字母顺序重新排列它TTdatetotal在创建。虽然我以后可以手动重新排序,但我想知道是否有一种更简单的方法可以一步实现。

我想我也可以

result = pd.DataFrame(np.transpose([datelist, [0]*l, [0]*l]),
                      columns = ['date', 'total', 'TT'])

但它看起来也很乏味。还有其他建议吗?


问题答案:

您可以将列的(正确排序的)列表作为参数传递给构造函数,或使用OrderedDict:

# option 1:
result = pd.DataFrame({'date': datelist, 'total': [0]*len(datelist), 
                   'TT': [0]*len(datelist)}, columns=['date', 'total', 'TT'])

# option 2:
od = collections.OrderedDict()
od['date'] = datelist
od['total'] = [0]*len(datelist)
od['TT'] = [0]*len(datelist)
result = pd.DataFrame(od)


 类似资料:
  • 问题内容: 我是Java的新手,正在尝试按字母顺序排列术语的arrayList。(一个术语定义为一个字符和一个整数)(例如 我的代码如下: 为什么这不起作用?以及我该如何完成呢?我的arrayList称为术语,填充有Term类型 问题答案: 您在这行代码中遇到的问题。您的课程不是So 的类型,这两个对象将基于哪个属性或条件方法? 您必须使您的类为Comparable类型。和,根据您的需要覆盖该方法

  • 问题内容: 我对python中的数据结构有些困惑;,和。我正在尝试对一个简单的列表进行排序,可能是因为无法识别无法排序的数据类型。 我的清单很简单: 我的问题是这是什么类型的数据,以及如何按字母顺序对单词进行排序? 问题答案: 表示列表,表示元组和表示字典。您应该看一下官方的Python教程,因为这些是Python编程的基础知识。 您所拥有的是一个字符串列表。您可以像这样对它进行排序: 如您所见,

  • 问题内容: myArray = [Step 6, Step 12, Step 5, Step 14, Step 4, Step 11, Step 16, Step 9, Step 3, Step 13, Step 8, Step 2, Step 10, Step 7, Step 1, Step 15] 如何以这种方式在上面对这个数组排序? 我很快使用了此功能,但它是按这种方式排序的 问题答案: 另

  • 已知字母序列【d, g, e, c, f, b, o, a】,请实现一个函数针对输入的一组字符串 input[] = {“bed”, “dog”, “dear”, “eye”},按照字母顺序排序并打印,结果应为:dear, dog, eye, bed。 说明 本问题在网上比较常见,但这里尝试用另外一个思路,并且用python来写,与众多用c++的有所不同,且似乎短小了不少。自己感觉比网上参考到的更

  • 问题内容: 我在mysql排序中寻找一些调整,我通常从表中选择记录,然后按Name(varchar)ASC排序记录, 但编号始终是第一位的 这是我的问题的一些示例( 注意。mysql首先用0-9排序记录 ) 我想要的是字母顺序,然后是数字 所需的输出 问题答案: 使用以下子句:

  • 我必须创建一个方法,根据电子邮件按字母顺序排序对象的ArrayList,然后打印排序后的数组。我对它排序有困难的部分。我已经研究过它,并尝试使用,但这对我不起作用。我需要一种叫做比较器的东西,但不知道它是如何工作的。我必须使用这些,或者像气泡排序或插入排序之类的东西可以用于这种事情吗? 这是我目前掌握的代码: