这是我的问题的扩展.
为了使它更简单让我们假设我有一个pandas数据帧如下.
df = pd.DataFrame([[1.1, 1.1, 2.5, 2.6, 2.5, 3.4,2.6,2.6,3.4], list('AAABBBBAB'), [1.1, 1.7, 2.5, 2.6, 3.3, 3.8,4.0,4.2,4.3]]).T
df.columns = ['col1', 'col2','col3']
Run Code Online (Sandbox Code Playgroud)
数据帧:
col1 col2 col3
0 1.1 A 1.1
1 1.1 A 1.7
2 2.5 A 2.5
3 2.6 B 2.6
4 2.5 B 3.3
5 3.4 B 3.8
6 2.6 B 4
7 2.6 A 4.2
8 3.4 B 4.3
Run Code Online (Sandbox Code Playgroud)
我想根据一些条件对此进行分组.逻辑基于col1 col2值和col3的累积差异:
预期产量:
col1 col2 col3 session
0 1.1 A 1.1 …Run Code Online (Sandbox Code Playgroud) 我有一个像下面这样的单词列表.
wordlist = ['p1','p2','p3','p4','p5','p6','p7']
数据框如下所示.
df = pd.DataFrame({'id' : [1,2,3,4],
'path' : ["p1,p2,p3,p4","p1,p2,p1","p1,p5,p5,p7","p1,p2,p3,p3"]})
Run Code Online (Sandbox Code Playgroud)
输出:
id path
1 p1,p2,p3,p4
2 p1,p2,p1
3 p1,p5,p5,p7
4 p1,p2,p3,p3
Run Code Online (Sandbox Code Playgroud)
我想计算路径数据以获得以下输出.是否有可能实现这种转变?
id p1 p2 p3 p4 p5 p6 p7
1 1 1 1 1 0 0 0
2 2 1 0 0 0 0 0
3 1 0 0 0 2 0 1
4 1 1 2 0 0 0 0
Run Code Online (Sandbox Code Playgroud) 我正在尝试通过python脚本连接到mysqldb。我已将my.cnf中的绑定地址更改为“ 192.168.56.101”,这是我的服务器IP。
import MySQLdb
db = MySQLdb.connect(host='192.168.56.101',
user='root',
passwd='pass',
db='python')
Run Code Online (Sandbox Code Playgroud)
上面的代码给了我以下错误。
_mysql_exceptions.OperationalError: (1130, "Host '192.168.56.1' is not allowed to connect to this MySQL server")
Run Code Online (Sandbox Code Playgroud)
它已将我的IP地址“ 192.168.56.101”作为“ 192.168.56.1”?我也试过这个:
mysql -u nilani -p pass -h 192.168.56.101
Run Code Online (Sandbox Code Playgroud)
它也会产生同样的错误,
ERROR 1130 (HY000): Host '192.168.56.1' is not allowed to connect to this MySQL serve
Run Code Online (Sandbox Code Playgroud)
为什么无法正确识别我的IP?
是否可以DataFrame使用matplotlib 打印饼图?这有关于绘制许多图表类型的说明,包括条形图,直方图,散点图等.但饼图丢失了吗?
我已经定义了两个矩阵,如下所示:
from scipy import linalg, mat, dot
a = mat([-0.711,0.730])
b = mat([-1.099,0.124])
Run Code Online (Sandbox Code Playgroud)
现在,我想计算这两个矩阵的余弦相似度.以下代码有什么问题.它给了我一个错误objects are not aligned
c = dot(a,b)/np.linalg.norm(a)/np.linalg.norm(b)
Run Code Online (Sandbox Code Playgroud) 我正在尝试转录一个有点大的音频文件。它的属性如下。
Size : 278.3 MB
Duration : 52 minutes
Format : WAV
Run Code Online (Sandbox Code Playgroud)
以下是我用来将其转换为 60 秒持续时间的代码。你能建议立即转录这个文件吗?
import speech_recognition as sr
r = sr.Recognizer()
with sr.AudioFile('sampleMp3.WAV') as source:
audio = r.record(source, duration=60)
command = r.recognize_google(audio)
text_file = open("Output.txt", "w")
text_file.write(command)
text_file.close()
Run Code Online (Sandbox Code Playgroud) 可以说我有一个像以下一样的DataFrame.
A B
0 text1 200
1 text2 200
2 text1 400
3 text2 500
4 text1 300
5 text1 600
6 text2 300
Run Code Online (Sandbox Code Playgroud)
我想打印以下输出
A B
0 text1,text2 200
2 text1 400
3 text2 500
4 text1,text2 300
5 text1 600
Run Code Online (Sandbox Code Playgroud)
没有订单,我只想采用列"A"的文本标签来匹配"B"列中的值.df.groupby据我所知,这必须完成.我的努力还没有任何成功.希望你能得到我的问题.
我需要Dataframe按ip地址范围过滤大熊猫.是否可以使用正则表达式?
Ex. From 61.245.160.0 To 61.245.175.255
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用以下代码将pandas数据帧写入MySQL数据库.
import pandas as pd
import numpy as np
from pandas.io import sql
import MySQLdb
df = pd.DataFrame([[1.1, 1.1, 1.1, 2.6, 2.5, 3.4,2.6,2.6,3.4,3.4,2.6,1.1,1.1,3.3], list('AAABBBBABCBDDD'), [1.1, 1.7, 2.5, 2.6, 3.3, 3.8,4.0,4.2,4.3,4.5,4.6,4.7,4.7,4.8]]).T
db = MySQLdb.connect("192.168.56.101","nilani","123","test")
cursor = db.cursor()
cursor.execute("DROP TABLE IF EXISTS TEST")
sql = """CREATE TABLE TEST (
ID INT NOT NULL,
COL1 CHAR(20),
COL2 CHAR(20),
COL3 CHAR(20))"""
cursor.execute(sql)
sql.write_frame(df, con=db, name='TEST', flavor='mysql')
db.close()
Run Code Online (Sandbox Code Playgroud)
我一直在提到这个问题和其他资源.我有任何方式得到以下错误.会是什么原因?
sql.write_frame(df, con=db, name='TEST', flavor='mysql')
AttributeError: 'str' object has no attribute 'write_frame'
Run Code Online (Sandbox Code Playgroud) python ×9
pandas ×6
dataframe ×5
mysql ×2
ip-address ×1
kannel ×1
matplotlib ×1
matrix ×1
mysql-python ×1
numpy ×1
pie-chart ×1
sms ×1
smtplib ×1