小编elP*_*tor的帖子

带有 <use> 标签的 SVG 不可见

我对 SVG 还比较陌生,我一直在探索各种在线呈现它们的方法。每个似乎都有自己的优点和缺点,但<svg>元素本身似乎有最大的缺点 - 它不渲染!

我的代码非常简单(引用公共 URL SVG):

<div>
    <svg xmlns="http://www.w3.org/2000/svg">
        <use xlink:href="https://svgshare.com/i/7q9.svg"></use>
    </svg>
</div>
Run Code Online (Sandbox Code Playgroud)

为了确保 SVG 本身可以使用其他标签,我创建了以下 jsFiddle: http: //jsfiddle.net/dykv8swr/24/

我缺少什么?

奖励:作为第二个问题 - 似乎fill:currentColor不适用于任何 SVG 类型,似乎也无法弄清楚。

提前致谢。

html css svg

5
推荐指数
1
解决办法
6360
查看次数

检查重复的mysql行

我有一个包含一个MySQL表field_one,field_two,field_three

我想检查field_one是否包含重复值(如果它是唯一的).

如何在mysql中做到这一点?

谢谢

mysql unique

4
推荐指数
1
解决办法
7153
查看次数

Pandas:根据多级第一次出现合并数据帧

我正在尝试根据一对标准(monthnum)的第一次出现将一个大型数据帧与一个小型数据帧合并.

我拼凑了可行的代码(底部的实际/期望输出),但似乎它可能更有效率.

我的问题是 - 我错过了一个更容易的方法吗?

建立:

import pandas as pd

m = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2]
n = [1,1,1,20,20,300,300,20,20,1,1,1,20,300,20,1,1,1,20,20,300,300,300,20,20,1,1]
df = pd.DataFrame({'month':m, 'num':n, 'x':0})

m2 = [1,1,1,2,2,2]
n2 = [1,20,300,1,20,300]
s2 = [11,222,3333,44,555,6666]
df2 = pd.DataFrame({'month':m2, 'num':n2, 'sum':s2})
Run Code Online (Sandbox Code Playgroud)

当前代码:

dfx = pd.DataFrame(df.groupby(['month','num'])['x'].idxmax())
dfx.rename(columns = {'x':'find'}, inplace = True)

df2.set_index(['month','num'], inplace = True)
df2 = pd.merge(df2, dfx, left_index = True, right_index = True)

df = df.merge(df2, left_index = True, right_on = 'find', how = 'left')
df = df.drop(['find','x'], axis = …
Run Code Online (Sandbox Code Playgroud)

python merge pandas

3
推荐指数
1
解决办法
356
查看次数

熊猫:将列转移到标题

我正在尝试将列中的值转换为列标题,但保留其余数据.这是我的完整代码,以及最接近我正在寻找的内容.唯一的问题是我无法弄清楚如何保留end列:

import pandas as pd

starts = pd.date_range(start = '1/1/2017', freq = '31d', periods = 4).tolist()
ends = pd.date_range(start = '1/31/2017', freq = '31d', periods = 4).tolist()

df = pd.DataFrame({ 'id':['XXX','XXX','XXX','XXX','YYY','YYY','YYY','YYY'], 
                    'start': starts + starts,
                    'end': ends + ends,
                    'type':['car','car','car','car','truck','truck','truck','truck']
                    }, columns = ['id','start','end','type'])
Run Code Online (Sandbox Code Playgroud)

原始数据帧:

    id      start        end   type
0  XXX 2017-01-01 2017-01-31    car
1  XXX 2017-02-01 2017-03-03    car
2  XXX 2017-03-04 2017-04-03    car
3  XXX 2017-04-04 2017-05-04    car
4  YYY 2017-01-01 2017-01-31  truck
5  YYY 2017-02-01 2017-03-03 …
Run Code Online (Sandbox Code Playgroud)

python pivot pandas

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

熊猫corr()经常返回NaN

我试图在数据框上运行我认为应该是简单的相关函数的函数,但是它在我认为不应该的地方返回NaN。

码:

# setup
import pandas as pd
import io

csv = io.StringIO(u'''
id  date    num
A   2018-08-01  99
A   2018-08-02  50
A   2018-08-03  100
A   2018-08-04  100
A   2018-08-05  100
B   2018-07-31  500
B   2018-08-01  100
B   2018-08-02  100
B   2018-08-03  0
B   2018-08-05  100
B   2018-08-06  500
B   2018-08-07  500
B   2018-08-08  100
C   2018-08-01  100
C   2018-08-02  50
C   2018-08-03  100
C   2018-08-06  300
''')

df = pd.read_csv(csv, sep = '\t')

# Format manipulation
df = df[df['num'] …
Run Code Online (Sandbox Code Playgroud)

python statistics correlation dataframe pandas

3
推荐指数
1
解决办法
2768
查看次数

Pandas - 根据其他列创建总列

我正在尝试创建一个总列,它根据第三列对另一列中的数字求和.我可以通过使用.groupby(),但这创建一个截断列,而我想要一个相同长度的列.

我的代码:

df = pd.DataFrame({'a':[1,2,2,3,3,3], 'b':[1,2,3,4,5,6]})
df['total'] = df.groupby(['a']).sum().reset_index()['b']
Run Code Online (Sandbox Code Playgroud)

我的结果:

   a  b  total
0  1  1    1.0
1  2  2    5.0
2  2  3   15.0
3  3  4    NaN
4  3  5    NaN
5  3  6    NaN
Run Code Online (Sandbox Code Playgroud)

我想要的结果:

   a  b  total
0  1  1    1.0
1  2  2    5.0
2  2  3    5.0
3  3  4   15.0
4  3  5   15.0
5  3  6   15.0
Run Code Online (Sandbox Code Playgroud)

...每'a'列的总和与另一列相同.

python pandas

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

Pandas - 在没有循环的情况下查找两个 DataFrames 之间最近的日期

我正在尝试使用两个单独的 DataFrame 查找最近的上一个日期。我实际上有代码来做它,但它使用了一个for循环,我宁愿不使用它,特别是因为我的实际数据帧将比以下代码段大得多:

date_x = pd.to_datetime(['1/15/2015','2/14/2015','3/16/2015','4/15/2015','5/15/2015','6/14/2015','7/14/2015'])
date_y = pd.to_datetime(['1/1/2015','3/1/2015','6/14/2015','8/1/2015'])

dfx = pd.DataFrame({'date_x':date_x})
dfy = pd.DataFrame({'date_y':date_y})

z_list = []
for x in range(dfx['date_x'].count()):
    z_list.append(dfy['date_y'][dfy['date_y'] <= dfx['date_x'][x]].max())

dfx['date_z'] = z_list
Run Code Online (Sandbox Code Playgroud)

产生...

      date_x     date_z
0 2015-01-15 2015-01-01
1 2015-02-14 2015-01-01
2 2015-03-16 2015-03-01
3 2015-04-15 2015-03-01
4 2015-05-15 2015-03-01
5 2015-06-14 2015-06-14
6 2015-07-14 2015-06-14
Run Code Online (Sandbox Code Playgroud)

这正是我想要的,但同样,我认为有一种更疯狂的方式。

python pandas

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

Pandas:按日期字符串对数据帧进行排序而不进行转换

采用这个简单的数据框:

df = pd.DataFrame({
    'date':['1/15/2017', '2/15/2017','10/15/2016', '3/15/2017'], 
    'int':[2,3,1,4]
})
Run Code Online (Sandbox Code Playgroud)

我想按日期对其进行排序,然后将其保存到 CSV,而不必:

  1. 使用转换日期pd.to_datetime(df['date'])
  2. 使用对数据框进行排序.sort_values('date')
  3. 将日期转换回.strftime('%-m/%-d/%Y')

相反,做这样的事情(当然,这是行不通的):

df.apply(pd.to_dataframe(df['date']).sort_values(by = 'date', inplace = True)
Run Code Online (Sandbox Code Playgroud)

输出:

         date  kw
2  10/15/2016   1
0   1/15/2017   2
1   2/15/2017   3
3   3/15/2017   4
Run Code Online (Sandbox Code Playgroud)

这可能吗,还是我应该坚持三步流程?

python sorting pandas

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

熊猫:转向真/假,掉落专栏

我正在尝试创建我认为简单的数据透视表但我遇到严重问题.有两件事我无法做到:

  1. 最后摆脱"伙伴"专栏.
  2. 如果每个公司都有该合作伙伴,请将值设置为True或False.

建立:

df = pd.DataFrame({'company':['a','b','c','b'], 'partner':['x','x','y','y'], 'str':['just','some','random','words']})
Run Code Online (Sandbox Code Playgroud)

期望的输出:

company     x      y  
a        True  False
b        True   True
c       False   True
Run Code Online (Sandbox Code Playgroud)

我开始时:

df = df.pivot(values = 'partner', columns = 'partner', index = 'company').reset_index()
Run Code Online (Sandbox Code Playgroud)

让我接近,但当我试图摆脱"伙伴"专栏时,我甚至无法引用它,而且它不是"索引".

对于第二个问题,我可以使用:

df.fillna(False, inplace = True)
df.loc[~(df['x'] == False), 'x'] = True
df.loc[~(df['y'] == False), 'y'] = True
Run Code Online (Sandbox Code Playgroud)

但这似乎令人难以置信的hacky.任何帮助,将不胜感激.

python pivot pandas

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

使用 MySQL 的 Pandas 0.20.2 to_sql()

我正在尝试将数据帧写入 MySQL 表,但出现(111 Connection refused)错误。

我在这里遵循了接受的答案: 使用 SQLAlchemy, to_sql 使用 Pandas 写入 MySQL 数据库

答案的代码:

import pandas as pd
import mysql.connector
from sqlalchemy import create_engine

engine = create_engine('mysql+mysqlconnector://[user]:[pass]@[host]:[port]/[schema]', echo=False)
data.to_sql(name='sample_table2', con=engine, if_exists = 'append', index=False)
Run Code Online (Sandbox Code Playgroud)

...并且该create_engine()行没有错误地工作,但该to_sql()行因此错误而失败:

(mysql.connector.errors.InterfaceError) 2003: Can't connect to MySQL server on 'localhost:3306' (111 Connection refused)
Run Code Online (Sandbox Code Playgroud)

我如何连接到我的 MySQL 数据库/表并不是真正相关的,所以完全不同的答案值得赞赏,但鉴于熊猫 0.20.2 中 MySQL 'flavor'弃用,将数据帧写入 MySQL 的正确方法是什么?

python mysql pandas pandas-to-sql

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

Python Flask:发送文件和变量

我有两台服务器,其中一台试图从另一台获取文件。我正在使用Flask get请求来回发送简单数据(字符串,列表,JSON对象等)。

我也知道如何仅发送文件,但是我需要随数据发送错误代码。

我正在使用以下内容:

服务器1:

req = requests.post('https://www.otherserver.com/_download_file', data = {'filename':filename})
Run Code Online (Sandbox Code Playgroud)

服务器2:

@app.route('/_download_file', methods = ['POST'])
def download_file():
    filename = requests.form.get('filename')

    file_data = codecs.open(filename, 'rb').read()
    return file_data
Run Code Online (Sandbox Code Playgroud)

服务器1:

with codecs.open('new_file.xyz', 'w') as f:
    f.write(req.content)
Run Code Online (Sandbox Code Playgroud)

...一切都很好。但是,我想发送一个错误代码变量,file_data以便服务器1知道状态(而不是HTTP状态,而是内部状态代码)。

任何帮助表示赞赏。

python flask python-requests

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

我必须同时导入 Pandas 和 Numpy 吗?

多年来,我每天都使用 Pandas,并且经常(但不是那么频繁)使用 Numpy。大多数时候我会做类似的事情:

import pandas as pd
import numpy as np
Run Code Online (Sandbox Code Playgroud)

但是[编辑:在 pandas 2.0 之前] 还可以选择直接从 Pandas 使用 Numpy:

df['value'] = pd.np.where(df['date'] > '2020-01-01', 1, 0)
Run Code Online (Sandbox Code Playgroud)

有谁知道这些选项中的任何一个是否比另一个选项的性能明显更高?

python numpy pandas

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

在Javascript(jQuery)完成之前更新CSS

我一直在阅读关于javascript的单线程性质以及在代码完成之前UI将如何更新(例如,这个问题).对该问题的回答主要解释了代码如何执行,但在一些"hacky"定时器之外没有提供真正可行的解决方案.

我想知道是否有一个很好的解决方案,可能包括.then()在javascript执行之前"绘制"UI的承诺或功能.

以下是一个具体的例子:http://jsfiddle.net/zbtsd12k/.在这个例子中,我希望在运行计算之前立即改变"Change Color".

警告:我的示例包括10亿次迭代的for循环(在我的机器上花了不到2秒)并且可能会冻结您的计算机一段时间.

任何帮助,将不胜感激.

javascript css jquery

0
推荐指数
1
解决办法
62
查看次数