小编dar*_*ool的帖子

选择两个日期之间的DataFrame行

我正在从csv创建一个DataFrame,如下所示:

stock = pd.read_csv('data_in/' + filename + '.csv', skipinitialspace=True)
Run Code Online (Sandbox Code Playgroud)

DataFrame有一个日期列.有没有办法创建一个新的DataFrame(或只是覆盖现有的DataFrame),它只包含日期值在指定日期范围内或两个指定日期值之间的行?

python pandas

164
推荐指数
9
解决办法
27万
查看次数

使用默认值将列添加到dataframe

我有一个现有的数据框,我需要添加一个额外的列,每列包含相同的值.

现有的df:

Date, Open, High, Low, Close
01-01-2015, 565, 600, 400, 450
Run Code Online (Sandbox Code Playgroud)

新df:

Name, Date, Open, High, Low, Close
abc, 01-01-2015, 565, 600, 400, 450
Run Code Online (Sandbox Code Playgroud)

我知道如何附加现有的系列/数据框列.但这是一种不同的情况,因为我需要的是添加"名称"列并将每一行设置为相同的值,在本例中为"abc".

我不完全确定如何做到这一点.

python pandas

151
推荐指数
8
解决办法
23万
查看次数

熊猫组月,年

我有以下数据帧:

Date        abc    xyz
01-Jun-13   100    200
03-Jun-13   -20    50
15-Aug-13   40     -5
20-Jan-14   25     15
21-Feb-14   60     80
Run Code Online (Sandbox Code Playgroud)

我需要按年份和月份对数据进行分组.即:2013年1月,2013年2月,2013年3月等组...我将使用新分组的数据创建一个显示每年/每月abc vs xyz的图表.

我已经尝试过groupby和sum的各种组合,但似乎无法获得任何工作.

谢谢你的帮助.

python pandas

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

熊猫更新sql

有没有办法进行SQL更新 - 从数据帧到哪里而不遍历每一行?我有一个postgresql数据库,并从数据帧更新数据库中的表我将使用psycopg2并执行以下操作:

con = psycopg2.connect(database='mydb', user='abc', password='xyz')
cur = con.cursor()

for index, row in df.iterrows():
    sql = 'update table set column = %s where column = %s'
    cur.execute(sql, (row['whatver'], row['something']))
con.commit()
Run Code Online (Sandbox Code Playgroud)

但另一方面,如果即时通讯从sql读取表或将整个数据帧写入sql(没有update-where),那么我只会使用pandas和sqlalchemy.就像是:

engine = create_engine('postgresql+psycopg2://user:pswd@mydb')
df.to_sql('table', engine, if_exists='append')
Run Code Online (Sandbox Code Playgroud)

使用to_sql进行"单线程"非常棒.是不是有类似的事情做更新 - 从熊猫到postgresql?或者是通过迭代每一行来实现它的唯一方法,就像我上面所做的那样.是不是以无效的方式遍历每一行?

python postgresql pandas

39
推荐指数
3
解决办法
3万
查看次数

从pandas df更新数据库中的现有行

我有一个PostgreSQL数据库.Pandas有一个'to_sql'函数,用于将数据帧的记录写入数据库.但是我没有找到任何关于如何在完成数据帧时使用pandas更新现有数据库行的文档.

目前,我可以使用pandas read_sql_table将数据库表读入数据帧.然后我根据需要处理数据.但是,我无法弄清楚如何将该数据帧写回数据库以更新原始行.

我不想要覆盖整个表格.我只需要更新最初选择的行.

python postgresql pandas

23
推荐指数
1
解决办法
6397
查看次数

比较熊猫专栏中的花车

我有以下数据帧:

       actual_credit    min_required_credit
   0   0.3              0.4
   1   0.5              0.2
   2   0.4              0.4
   3   0.2              0.3
Run Code Online (Sandbox Code Playgroud)

我需要添加一个列,指示actual_credit> = min_required_credit的位置.结果将是:

       actual_credit    min_required_credit   result
   0   0.3              0.4                   False
   1   0.5              0.2                   True
   2   0.4              0.4                   True
   3   0.1              0.3                   False
Run Code Online (Sandbox Code Playgroud)

我正在做以下事情:

df['result'] = abs(df['actual_credit']) >= abs(df['min_required_credit'])
Run Code Online (Sandbox Code Playgroud)

但是第3行(0.4和0.4)经常导致False.在各个地方研究这个问题后,包括:在Python中比较浮点数几乎相等的最佳方法是什么?我仍然无法让这个工作.只要两列具有相同的值,结果就是False,这是不正确的.

我正在使用python 3.3

python pandas

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

自动更新 Vue 站点/PWA 新版本

我有一个 Vue 应用程序,既可在浏览器中使用,又可用作 PWA。我想确保每当更新推送到服务器时用户都会收到最新版本。

我正在使用NginxDjango一起vue-cli@vue/cli-plugin-pwa

目前,当我npm run build将新版本推送到服务器时,用户会获得旧版本的应用程序(在浏览器中以及手机上的 PWA 中)。为了获取新版本,他们在浏览器中进行硬刷新,或者对于 PWA,他们关闭应用程序并再次重新打开它。

有没有办法确保每次加载应用程序时都进行版本检查,以便检索新版本?

nginx vue.js progressive-web-apps

8
推荐指数
1
解决办法
5139
查看次数

基于值的颜色matplotlib条形图

有没有办法根据条形值为条形图的条形着色.例如:

- values below -0.5: red
- values between -0.5 to 0: green
- values between 0 to 08: blue
- etc
Run Code Online (Sandbox Code Playgroud)

我找到了一些条形着色的基本例子,但没有任何可以满足价值范围的例子,例如上面的例子.

更新:

谢谢你kikocorreoso的建议.根据您的示例,当两个轴都是数字时,这很有效.但是在我的情况下,我的原始数据结构是一个pandas数据帧.然后我使用df.stack()并绘制结果.这意味着数据帧行/列成为绘图的x轴,数据框单元格是Y轴(条形).

我按照你的例子尝试过屏蔽,但是当Y轴是数字而X轴是名字时它似乎不起作用.例如:

     col1    col2   col3   col4
 row1 1       2      3      4
 row2 5       6      7      8
 row3 9       10     11     12
 row4 13      14     15     16
Run Code Online (Sandbox Code Playgroud)

需要将上述数据帧绘制为条形图,其中行/列组合形成x轴.每个单元格值都是一个条形.最后,根据原始问题对条形图进行着色.谢谢

python matplotlib

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

与服务工作者的生成错误:MIME类型无效

我有一个在开发和生产中工作的React应用程序,但是在生产中我在控制台中收到以下错误:

The script has an unsupported MIME type ('text/html').
Failed to load resource: net::ERR_INSECURE_RESPONSE
registerServiceWorker.js:80 Error during service worker registration: 
DOMException: Failed to register a ServiceWorker: The script has an unsupported MIME type ('text/html').
Run Code Online (Sandbox Code Playgroud)

只有在生产环境中才会在开发中发生错误.该应用程序仍然可以在生产中正常工作,但我仍然希望解决错误.

在进行一些挖掘后,似乎在生产中,service-worker.js文件是从原始index.html文件请求的,而MIME类型为text/html,service-worker.js因此该文件没有正确的MIME类型application/javascript.

不幸的是,尽管我认为我明白这个问题是什么,但我还是无法修复它.

生产构建是使用后端创建的create-react-app,并由Django后端提供.index.html包含React应用程序的页面提供如下:

re_path('.*', TemplateView.as_view(template_name='index.html'))
Run Code Online (Sandbox Code Playgroud)

是否有Nginx需要改变的东西?我猜不会因为我有其他生产网站在MIME类型方面正常工作(但是它们都不是React需要服务工作者的应用程序).

django nginx reactjs

6
推荐指数
1
解决办法
558
查看次数

使用 Nginx 服务 Django 和 Vue

我有一个网站,它使用 Django 作为 API,使用 Vue 作为前端。目前,当我部署网站时,我执行以下操作:

  • 创建 Vue 应用程序的生产版本 ( npm run build)
  • 将 Vuedist文件夹复制到 Django 应用程序中的特定文件夹中
  • 其中一个 Django url 设置为TemplateView提供 Vue 服务的index.html

通过执行上述操作,Nginx在生产中只需使用 Django 应用程序即可gunicorn,一切正常。

不过,我更喜欢让 Nginx 提供 Vueindex.html和静态文件。例如,/将为 Django 应用程序提供服务,并为/spaVue 应用程序提供服务,Vue 应用程序本身将调用 api。

这是我当前的Nginx配置:

upstream appserver_wsgi_app {
  server localhost:8000 fail_timeout=0;
}

server {
  listen 80;
  server_name www.example.com;
  rewrite ^(.*) https://$server_name$1 permanent;
}

server {
    server_name www.example.com;
    listen 443 ssl;
    ... …
Run Code Online (Sandbox Code Playgroud)

django nginx vue.js

6
推荐指数
1
解决办法
3690
查看次数