pandas - Python Pandas:仅在使用函数调用满足条件时将外部数据集读入数据帧
问题描述
假设我的本地机器上有一个名为“test.xlsx”的 Excel 文件。我可以使用传统代码读取此数据集。
df_test = pd.read_excel('test.xlsx')
但是,如果满足条件,我想有条件地读取该数据集......如果满足另一个条件,我想读取不同的数据集。
下面是我尝试使用函数的代码:
def conditional_run(x):
if x == 'fleet':
eval('''df_test = pd.read_excel('test.xlsx')''')
elif x != 'fleet':
eval('''df_test2 = pd.read_excel('test_2.xlsx')''')
conditional_run('fleet')
以下是我得到的错误:
File "<string>", line 1
df_test = pd.read_excel('0Day Work Items Raw Data.xlsx')
^
SyntaxError: invalid syntax
解决方案
eval
在这种情况下可能没有理由使用。根据文件名有条件地读取文件可能就足够了。例如:
def conditional_run(x):
if x == 'fleet':
file = "test.xlsx"
elif x != 'fleet':
file = "test_2.xlsx"
df_test = pd.read_excel(file)
return df_test
conditional_run('fleet')
推荐阅读
- visual-studio-code - 对于某些字符,自动片段触发在 VSCode 中不起作用
- powershell - 过滤带有名称的文件
- python - 如何使用 Python 在命令提示符中保存自动生成的输入?
- c# - 按下 Alt 时无法在 WPF 文本框中输入文本
- python - 从数据框中删除日期重叠的行
- javascript - 完成加载后如何确定从 REST API 接收数据的数组是否正在加载?在 React 中使用该数据
- reactjs - 如何在输入占位符内显示 yup 表单错误消息?
- python-3.x - 在 Python 中将字节流转换为字符串
- sql - “嵌套”或具有多个值
- reactjs - 如何阻止函数调用自身?(反应)