我正在尝试在pandas中预设数据框的尺寸,这样我就可以有500行乘300列。我想在将数据输入数据帧之前设置它。
我正在开展一个项目,我需要获取一列数据,复制它,将其向右移动一行并将其向下移动一行。 当我将它向下移动一行时,我遇到了最后一行被切断的问题(例如:我从23行开始,尽管我向下移动了一行并且应该有24行,但它仍保持在23行)。
这是我到目前为止所做的:
bolusCI = pd.DataFrame()
##set index to very high number to accommodate shifting row down by 1
bolusCI = bolus_raw[["Activity (mCi)"]].copy()
activity_copy = bolusCI.shift(1)
activity_copy
pd.concat([bolusCI, activity_copy], axis =1)
谢谢!
答案 0 :(得分:1)
可能有更有效的方法来实现您的目标,但要直接回答您的问题,您可以执行类似的操作来初始化具有特定维度的DataFrame
pd.DataFrame(columns=range(300),index=range(500))
答案 1 :(得分:0)
您只需在构造函数中定义index
和columns
即可。最简单的方法是使用pandas.RangeIndex
。它在语法中模仿np.arange
和range
。您还可以传递name
参数来命名它。
df = pd.DataFrame(
index=pd.RangeIndex(500),
columns=pd.RangeIndex(300)
)
print(df.shape)
(500, 300)