相关疑难解决方法(0)

附加for循环中生成的pandas数据帧

我在for循环中访问一系列Excel文件.然后我将excel文件中的数据读取到pandas数据帧.我无法弄清楚如何将这些数据帧附加到一起,然后将数据帧(现在包含来自所有文件的数据)保存为新的Excel文件.

这是我试过的:

for infile in glob.glob("*.xlsx"):
    data = pandas.read_excel(infile)
    appended_data = pandas.DataFrame.append(data) # requires at least two arguments
appended_data.to_excel("appended.xlsx")
Run Code Online (Sandbox Code Playgroud)

谢谢!

python pandas

54
推荐指数
2
解决办法
10万
查看次数

为什么我不能在循环中附加pandas数据帧

我知道有几种方法可以在Pandas中构建数据帧.我的问题只是理解为什么下面的方法不起作用.

首先,一个工作的例子.我可以创建一个空数据框,然后添加一个类似于documenta的新数据框

In [3]: df1 = pd.DataFrame([[1,2],], columns = ['a', 'b'])
   ...: df2 = pd.DataFrame()    
   ...: df2.append(df1)   
Run Code Online (Sandbox Code Playgroud)

Out[3]: a b 0 1 2

但是,如果我执行以下操作,则df2变为None:

In [10]: df1 = pd.DataFrame([[1,2],], columns = ['a', 'b'])
    ...: df2 = pd.DataFrame()
    ...: for i in range(10):
    ...:     df2.append(df1)

In [11]: df2
Out[11]:
Empty DataFrame
Columns: []
Index: []
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么它这样工作?谢谢!

python dataframe pandas

7
推荐指数
1
解决办法
1万
查看次数

使用exec使用动态逻辑修改熊猫数据框

假设我有一个脚本,该脚本从数据库中将数据读取到数据帧中,在该数据帧上运行一些逻辑,然后将结果数据帧导出到另一个数据库表中,如下所示。问题是exec函数之后,transform.py中的数据帧不会被覆盖。

注意:这是一个简单的示例,用于说明问题,而不是我尝试使用此方法解决的实际问题。

期望:

执行前

+---------+---------------+--------------+----------+
| metric  | modified_date | current_date | datediff |
+---------+---------------+--------------+----------+
| metric1 | 2019-03-31    | 2019-05-03   |       33 |
| metric2 | 2019-03-31    | 2019-05-03   |       33 |
| metric3 | 2019-03-31    | 2019-05-03   |       33 |
| metric4 | 2019-03-20    | 2019-05-03   |       44 |
+---------+---------------+--------------+----------+
Run Code Online (Sandbox Code Playgroud)

执行后

+---------+---------------+--------------+----------+
| metric  | modified_date | current_date | datediff |
+---------+---------------+--------------+----------+
| metric4 | 2019-03-20    | 2019-05-03   |       44 |
+---------+---------------+--------------+----------+
Run Code Online (Sandbox Code Playgroud)

实际:

执行前

+---------+---------------+--------------+----------+ …
Run Code Online (Sandbox Code Playgroud)

python pandas

2
推荐指数
1
解决办法
211
查看次数

标签 统计

pandas ×3

python ×3

dataframe ×1