我有一个Dataframe存储商店名称和每日销售数量.我试图使用下面的Python脚本将其插入Salesforce.但是我收到了一个错误
TypeError:'int64'类型的对象不是JSON可序列化的
下面给出的是Dataframe的视图
Storename,Count
Store A,10
Store B, 12
Store C, 5
Run Code Online (Sandbox Code Playgroud)
我使用以下代码将其插入Salesforce
update_list = []
for i in range((len(store))):
update_data = {
'name' : store['entity_name'].iloc[i],
'count__c': store['count'].iloc[i] }
update_list.append(update_data)
sf_data_cursor = sf_datapull.salesforce_login()
sf_data_cursor.bulk.Account.update(update_list)
Run Code Online (Sandbox Code Playgroud)
获取上面最后一行执行的错误.谁能协助解决这个问题.谢谢..
我有一个Dataframe,其时间戳列的类型为'datetime64 [ns]'.当我尝试将其插入Salesforce平台时出现错误' TypeError:类型为'Timestamp'的对象不是JSON可序列化的 '.如何更改此时间戳列以使其正确更新.下面给出的是Dataframe的视图.
Id,Name,Date,Type
1,ProdA,2018-05-18 04:45:08,S
1,ProdB,2018-05-18 02:15:00,S
1,ProdC,2018-05-16 10:20:00,S
Run Code Online (Sandbox Code Playgroud)
这4列中每一列的数据类型:
Id object
Name object
Date datetime64[ns]
Type object
dtype: object
Run Code Online (Sandbox Code Playgroud)
谁能帮助解决这个问题.谢谢.
我有两个数据框,用于存储有关在商店购买的产品的数据。df1存储有关商店名称、产品 ID、产品名称和购买日期的数据。df2存储有关产品 ID、产品名称和类型的数据。我正在尝试df2使用收到日期值进行更新df1,但仅限于类型为 的产品P。
下面给出的是数据框的视图以及我尝试做的事情。
df1:
StoreName,ProdId,ProdName,DateReceived
Store A,P1,Prod1,2018-05-01
Store A,P2,Prod2,2018-05-02
Store B,P1,Prod1,2018-05-04
Run Code Online (Sandbox Code Playgroud)
df2:
DateRecived,ProdId,ProdName,Type
,P1,Prod1,P
,P2,Prod2,P
,P3,Prod3,S
Run Code Online (Sandbox Code Playgroud)
脚本:
df2['DateRecived'] = df2['ProdId'].map(df1.set_index('ProdId')['StoreName']).df2['Type'] == 'P'
Run Code Online (Sandbox Code Playgroud)
运行此命令会引发以下错误:
InvalidIndexError: Reindexing only valid with uniquely valued Index objects
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我修改脚本,以便我能够通过Store Name和过滤出值Prod Name并df2填充该DateReceived值。谢谢。
我有一个DAG,它执行一个连接到Postgres DB的函数,删除表中的内容,然后插入一个新的数据集。
我正在本地尝试此操作,并且看到尝试运行此操作时,Web服务器需要很长时间才能连接,并且在大多数情况下不会成功。但是,作为连接过程的一部分,它似乎正在从后端执行查询。因为我具有删除功能,所以即使我没有计划脚本或手动启动,我也会看到数据已从表中删除(基本上是执行了其中一个功能)。有人可以建议我在这方面做错什么。
在用户界面中弹出的一个错误是
DAG损坏:[/ Users / user / airflow / dags / dwh_sample23.py]超时
还可以在UI的dag ID旁边看到一个i,表示Web服务器的DAG对象中没有DAG。 下面给出的是我正在使用的代码:
## Third party Library Imports
import pandas as pd
import psycopg2
import airflow
from airflow import DAG
from airflow.operators import BashOperator
from datetime import datetime, timedelta
from sqlalchemy import create_engine
import io
# Following are defaults which can be overridden later on
default_args = {
'owner': 'admin',
'depends_on_past': False,
'start_date': datetime(2018, 5, 21),
'retries': 1,
'retry_delay': timedelta(minutes=1),
}
dag = DAG('dwh_sample23', default_args=default_args) …Run Code Online (Sandbox Code Playgroud) 当我尝试使用 Pandas 读取 csv 文件时出现 ParserError。下面给出的是错误和引发此错误的数据集。
pandas.errors.ParserError: Expected 10 fields in line 8, saw 11. Error could possibly be due to quotes being ignored when a multi-char delimiter is used.
Run Code Online (Sandbox Code Playgroud)
下面给出的是有这个错误的第 8 行
10/29/18 10:20,85505306, Scott,20181029102023-file.csv, 22.49,-12.18,CITY,,12:15.0,51:00.0,ABCD,9898,320,D231
Run Code Online (Sandbox Code Playgroud)
我正在使用以下命令读取 csv:
df.to_csv('file.csv'), index = False)
Run Code Online (Sandbox Code Playgroud)
csv 文件的示例输出:
File_Received_Time Label1 City FileName Label2 Label3 State Unnamed: 12 cTimestamp dTimestamp Label4 Label5 Label6 Label7 Label8
10/29/18 10:20 56776 Paris file1.csv 29 29 IL 29-10-2018 04:11:11 COL06 620 398 516 451
10/29/18 10:20 46069 Hongkong …Run Code Online (Sandbox Code Playgroud) 我试图在Airflow中传递Python函数。我不确定xcom_push函数的键和值应该是什么。任何人都可以在这方面提供协助。谢谢
def db_log(**context):
db_con = psycopg2.connect(" dbname = 'name' user = 'user' password = 'pass' host = 'host' port = '5439' sslmode = 'require' ")
task_instance = context['task_instance']
task_instance.xcom_push(key=db_con, value = db_log)
return (db_con)
Run Code Online (Sandbox Code Playgroud)
任何人都可以协助获得xcom_push函数的正确键和值。谢谢..
我正在尝试执行一个包含几个 Python 函数的 Airflow 脚本。这些函数基本上查询数据库并执行很少的任务。我正在尝试执行这是 Airflow 以便我能够分别监控这些功能中的每一个。下面给出的是我试图执行的代码并得到以下错误
子任务:NameError:未定义名称“task_instance”
## Third party Library Imports
import psycopg2
import airflow
from airflow import DAG
from airflow.operators.python_operator import PythonOperator
from datetime import datetime, timedelta
from sqlalchemy import create_engine
import io
# Following are defaults which can be overridden later on
default_args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': datetime(2018, 1, 23, 12),
'email': ['airflow@airflow.com'],
'email_on_failure': False,
'email_on_retry': False,
'retries': 1,
'retry_delay': timedelta(minutes=5),
}
dag = DAG('sample_dag', default_args=default_args, catchup=False, schedule_interval="@once")
#######################
## Login to DB …Run Code Online (Sandbox Code Playgroud) 我正在尝试自动化在每个月初运行的报告,以查询上个月的所有销售额。下面给出的是我正在使用的查询,但它返回空值。谁能帮助我解决我在这里做错的事情。
我正在使用 Amazon Redshift
select created_at,sale_id from billing
where to_char(created_at,'yyyy-mm') = EXTRACT(month FROM CURRENT_DATE - '1 month'::interval);
Run Code Online (Sandbox Code Playgroud)
谢谢。
我有一个包含逗号(,)值的列.我试图过滤掉没有逗号的行.
下面给出了我的数据集的示例视图
id,name,product_list
1,kevin,prod_a
2,scott,prod_b,prod_c
3,tim,prod_a
4,julie,prod_a,prod_e
Run Code Online (Sandbox Code Playgroud)
我期望SQL只返回id(1,3),因为它们在product_list列中没有逗号.任何人都可以帮助我如何过滤上述数据集.
我正在使用Redshift DB.