当前位置: 首页 > 知识库问答 >
问题:

获得熊猫设置与放大权

姜磊
2023-03-14

从0.13版本开始,可以通过引用尚未在数据帧中的. loc或. ix中的索引来追加到数据帧。看到留档。

那么我就不明白为什么这条线失败了:

all_treatments.loc[originalN:newN,:]    = all_treatments.loc[0:newrowcount,:]

这将生成ValueError:

ValueError: could not broadcast input array from shape (12) into shape (0)

这里是所有的治疗方法。形状=(53,12),原始n=53newN=64所有处理。loc[原文:newN,:]。形状=(0,12)所有处理。loc[0:newrowcount,:]。形状=(12,12)

在这里设置放大的正确方法是什么?

共有1个答案

吴高畅
2023-03-14

只能通过放大一行或一列进行设置。您正在设置一个范围。

这个loc/。ix/[]操作可以在为该轴设置不存在的关键点时执行放大。

对于您的使用,类似这样的东西应该可以用新的空白行扩展数据框:

df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6]})
>>> df
    a   b
0   1   4
1   2   5
2   3   6

new_row_count = 2
for new_row, old_row in enumerate(range(new_row_count), start=len(df)):
    df.ix[new_row] = None

>>>df
    a   b
0   1   4
1   2   5
2   3   6
3   NaN NaN
4   NaN NaN

如果您想从原始数据帧复制数据,我通常只会连接。

df = pd.concat([df, df.iloc[:2, :]], ignore_index=True)
 类似资料:
  • 查看以下: 问题是它不会在ipython笔记本中按默认值打印所有行,但我必须切片才能查看结果行。即使以下选项也不会更改输出: 有人知道如何显示整个阵列吗?

  • 我有一个数据帧,如: 所以我想通过两个“for循环”添加一些列,如: 新的类似数据帧的图片: 我的代码不起作用: 如何编写代码来获得像第二张图片这样的数据帧?

  • 我正在读取一个包含多个datetime列的csv文件。我需要在读取文件时设置数据类型,但datetimes似乎是个问题。例如: 运行时出现错误: 不理解数据类型"datetime" 通过pandas在事实之后转换列。to_datetime()不是一个选项,我不知道哪些列将成为datetime对象。这些信息可以更改,并且来自于通知我的数据类型列表的任何信息。 或者,我尝试用numpy.genfrom

  • 问题内容: 我有两列,将集存储在数据框中。 我想使用快速向量化操作在两列上执行集合并集 但是错误使我无法这样做,因为我在两列中都输入了内容。 有解决这个问题的好方法吗? 问题答案: 对于这些操作,纯Python可能更有效。 如果我们可以使用,则可能会花费一半的时间(继承可能不值得): 时序的DataFrame:

  • 问题内容: 假设我用两列(一个DateTime)和一个(整数)创建了一个熊猫DataFrame 。现在,我想根据第一列()中的值创建一个DatetimeIndex : 一切似乎都正常,除了我打印DataFrame时,它说它具有Int64Index。 我是在做错事还是不正确理解Indeces的概念? 问题答案: 没有就位(除非您通过)。否则一切正确 同样作为参考,在即将到来的0.12版本(下周)中,

  • 我想用替换大于任意数字(本例中为100)的