Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将列的某些部分添加到新的数据框中?_Python_Pandas_Dataframe - Fatal编程技术网

Python 如何将列的某些部分添加到新的数据框中?

Python 如何将列的某些部分添加到新的数据框中?,python,pandas,dataframe,Python,Pandas,Dataframe,所以我有一个长度为90的熊猫数据框,这并不重要 假设我有: df A date 1 2012-01-01 4 2012-02-01 5 2012-03-01 7 2012-04-01 8 2012-05-01 9 2012-06-01 2 2012-07-01 1 2012-08-01 3 2012-09-01 2 2012-10-01 5 2012-11-01 9 2012-12-01 0 2013-01-01 6 2013-02-

所以我有一个长度为90的熊猫数据框,这并不重要 假设我有:

df

A   date
1   2012-01-01
4   2012-02-01
5   2012-03-01
7   2012-04-01
8   2012-05-01
9   2012-06-01
2   2012-07-01
1   2012-08-01
3   2012-09-01
2   2012-10-01
5   2012-11-01
9   2012-12-01
0   2013-01-01
6   2013-02-01
我已经创建了一个新的数据框架

df_copy=df.copy() 
index = range(0,3)
df1 = pd.DataFrame(index=index, columns=range((len(df_copy.columns))))
df1.columns = df_copy.columns                     

df1['date'] = pd.date_range('2019-11-01','2020-01-01' , freq='MS')-pd.offsets.MonthBegin(1)
应该创建这样的数据帧

A   date
na   2019-10-01
na   2019-11-01
na   2019-12-01
因此,我使用以下代码来获取新数据帧中A的值

df1['A'] = df1['A'].iloc[9:12]
我希望结果是这样

A   date
2   2019-10-01
5   2019-11-01
9   2019-12-01
因此,我希望最后3个值在新的数据帧中分配一个iloc位置为9-12的值,索引不同,两个数据帧中的日期也不同。有没有办法做到这一点,因为

 df1['A'] = df1['A'].iloc[9:12]

似乎不起作用

据我所知,你可以通过生成几个新的数据帧来解决这个问题

df_copy=df.copy() 
index = range(0,1)
df1 = pd.DataFrame(index=index, columns=range((len(df_copy.columns))))
df1.columns = df_copy.columns                     

df1['date'] = pd.date_range('2019-11-01','2019-11-01' , freq='MS')-pd.offsets.MonthBegin(1)
df1['A'] = df1['A'].iloc[9]

然后附加到原始数据框并重复,这有点过头了,但这似乎是我能想到的唯一解决方案

您会遇到什么错误?您需要将问题的格式设置得更好,并添加一些可运行的代码。很难破解你现在提出的问题。我没有发现错误,它实际上没有任何作用wolfblitza第二个数据帧保持不变Elipe Faria舒尔给我一秒钟,我会编辑它然后尝试打印(df1)-你得到想要的结果了吗?