如何在Python中获得数据帧的名称?

2024-09-29 01:36:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我有下面的python函数导出数据帧到csv文件。我用下面的脚本称之为

finalExport(dataAllR, sourcePath, header, started)
  • dataAllR:数据帧的名称
  • sourcePath:路径
  • header:列列表
  • started:时间

^{pr2}$

我想使用在脚本中调用函数时传递的dataframe的名称,即dataAllR

exportPath = exportPath + '\\final_py_upload' + data + '.csv'
#                                                ^

我想根据数据帧名称生成文件名。在

请帮忙。在


Tags: 文件csv数据函数路径脚本名称列表
2条回答

事实是Python值没有名称,而是绑定到名称(有时-请参见第二个示例)。当我写作的时候

a = "a string"
b = a

"a string"的名称是什么?a,还是{},或者两者兼而有之?同样,当我写作的时候

^{pr2}$

"apple"的名字是什么?lst[2]不是名称,而是对容器元素的引用。This video by Ned Batchelder讨论了对Python还比较陌生的那些潜在的混淆源。在

不幸的是(?)Pandas数据帧没有name属性或类似属性。考虑到Python的灵活性,很容易定义一个NamedDataFrame子类来维护这样一个属性,但是您将首先面临如何派生这些名称的问题。在

由于Python允许您为对象分配任意的属性名,因此您可以为dataframe分配一个名为name的属性来表示它的名称:

import pandas as pd 
df = pd.DataFrame()
df.name = 'My Data Frame'
print(df.name) # My Data Frame

在您的例子中,在为dataAllR定义name属性之后:

^{pr2}$

您可以使用:

exportPath = exportPath + '\\final_py_upload' + data.name + '.csv'

或者,更好的是:

exportPath = f'{exportPath}\\final_py_upload{data.name}.csv'

相关问题 更多 >