我有一个熊猫数据框
print(df.head())
Run Code Online (Sandbox Code Playgroud)
Row ID Order ID Order Date ... Quantity Discount Profit
0 1 CA-2013-152156 09/11/2013 ... 2 0.00 41.9136
1 2 CA-2013-152156 09/11/2013 ... 3 0.00 219.5820
2 3 CA-2013-138688 13/06/2013 ... 2 0.00 6.8714
3 4 US-2012-108966 11/10/2012 ... 5 0.45 -383.0310
4 5 US-2012-108966 11/10/2012 ... 2 0.20 2.5164
Run Code Online (Sandbox Code Playgroud)
当我执行这个命令时:
ans = pd.pivot_table(data=df, index=['Segment'], columns=['Region'], values = ['Sales'], aggfunc={'Sales':['sum', 'mean']}, margins=True, dropna=False)
Run Code Online (Sandbox Code Playgroud)
它给出了这个错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.6/dist-packages/pandas/core/reshape/pivot.py", line …Run Code Online (Sandbox Code Playgroud) 我在python中有以下数据帧
Sex Survived
0 female 0.742038
1 male 0.188908
Run Code Online (Sandbox Code Playgroud)
我想绘制直方图,其中男性和女性是x轴中的两个值,y轴具有其对应的值.知道怎么样?.我是matplotlib和pandas的新手,所以请帮忙
我正在尝试在文本生成模型中实现波束搜索解码策略。这是我用来解码输出概率的函数。
def beam_search_decoder(data, k):
sequences = [[list(), 0.0]]
# walk over each step in sequence
for row in data:
all_candidates = list()
for i in range(len(sequences)):
seq, score = sequences[i]
for j in range(len(row)):
candidate = [seq + [j], score - torch.log(row[j])]
all_candidates.append(candidate)
# sort candidates by score
ordered = sorted(all_candidates, key=lambda tup:tup[1])
sequences = ordered[:k]
return sequences
Run Code Online (Sandbox Code Playgroud)
现在你可以看到这个函数是在batch_size 1的情况下实现的。添加另一个用于批量大小的循环将使该算法成为可能O(n^4)。就像现在一样缓慢。有什么办法可以提高这个功能的速度吗?我的模型输出的大小通常(32, 150, 9907)遵循格式(batch_size, max_len, vocab_size)
datum = soup.findAll('a', {'class': 'result-title'})
for data in datum:
print(data.text)
print(data.get('href'))
df = {'Title': data.text, 'Url': data.get('href')}
houseitems.append(df, ignore_index=True)
Run Code Online (Sandbox Code Playgroud)
我的代码有什么问题?为什么当我要求提供房屋物品时,它给了我空的数据。
空数据框
Columns: [Title, Url, Price]
Index: []
Run Code Online (Sandbox Code Playgroud) 我将多个csv文件保存在一个具有相同列布局的文件夹中,并希望将其作为pandas中的数据框加载到python中。
这个问题确实类似于该线程。
我正在使用以下代码:
import glob
import pandas as pd
salesdata = pd.DataFrame()
for f in glob.glob("TransactionData\Promorelevant\*.csv"):
appenddata = pd.read_csv(f, header=None, sep=";")
salesdata = salesdata.append(appenddata,ignore_index=True)
Run Code Online (Sandbox Code Playgroud)
是否有其他软件包更好的解决方案?
这需要很多时间。
谢谢
def feedforward(self,d):
out = []
for neuron in self.layer:
out.append(neuron.feedforward(d))
return np.array(out)
Run Code Online (Sandbox Code Playgroud)
这是我为执行前馈而编写的原始代码。我想使用多线程提高执行速度,因此我编辑了要从模块ThreadPoolExecutor中使用的代码concurrent.futures
def parallel_feedforward(self,func,param):
return func.feedforward(param)
def feedforward(self,d):
out = []
with ThreadPoolExecutor(max_workers = 4) as executor:
new_d = np.tile(d,(len(self.layer),1))
for o in executor.map(self.parallel_feedforward,self.layer,new_d):
out.append(o)
return np.array(out)
Run Code Online (Sandbox Code Playgroud)
变量d是一个向量,我使用np.tile()它以便executor.map正确地获取输入
计时两者的执行速度后。我发现 Code 1 明显比 Code 2 快(Code 2 几乎慢了 8-10 倍)。但是使用多线程的代码不会比循环的代码更快吗?是因为我写的代码错误还是因为其他原因。如果是因为我的代码中有一些错误,有人可以告诉我我做错了什么吗?
提前感谢您的帮助。
我从sqlite3数据库中选择了值并打印了cursor的计数.然后它给出了一个错误"'int'对象不可调用"
strq="select * from tblsample1"
self.con = sqlite3.connect('mydb.sqlite')
self.cur = self.con.cursor()
self.cur.execute(strq)
print(self.cur.rowcount())
Run Code Online (Sandbox Code Playgroud)
给出错误
TypeError:'int'对象不可调用
C:\ Users \ dominic.lopes \ Desktop> pylint Exception.py *************模块异常Exception.py:1:0:C0103:模块名称“ Exception”不符合snake_case命名样式(无效名称)Exception.py:11:4:C0103:常量名称“ x”与UPPER_CASE命名样式(无效名称)Exception.py:12:4:C0103:常量名称“ y” “不符合UPPER_CASE命名样式(无效名称)Exception.py:21:44:E0602:未定义的变量'count'(未定义的变量)
您的代码被评为3.85 / 10(上一次运行:6.92 / 10,-3.08)
这是我得到的错误回溯
我在 Keras 中训练了一个用于图像分类的模型。训练是通过使用枕头加载图像来进行的。在部署过程中,图像会加载到 opencv 中,这会大大降低模型的准确性。我发现pillow和opencv加载的图像在显示时是不同的。
im = Image.open("cat.jpg")
plt.imshow(im)
plt.show()
Run Code Online (Sandbox Code Playgroud)
img = cv2.imread('cat.jpg')
plt.imshow(img)
plt.show()
Run Code Online (Sandbox Code Playgroud)
为了解决这个问题,我尝试在 opencv 中加载图像并将其写入临时文件并将其加载到枕头中。
cv2.imwrite('cat2.jpg',img)
im1 = Image.open("cat2.jpg")
im == im1
Run Code Online (Sandbox Code Playgroud)
输出
错误的
im1我尝试将和打印im为数组,并且值完全不同。我必须在部署中使用opencv。无论如何,我可以保持模型的准确性吗?
opencv image-processing python-imaging-library conv-neural-network keras
我有一个输出大小为 3D 张量的网络(batch_size, max_len, num_classes)。我的基本真理是形状(batch_size, max_len)。如果我对标签执行 one-hot 编码,它将是形状,(batch_size, max_len, num_classes)即 中的值max_len是范围内的整数[0, num_classes]。由于原始代码太长,我写了一个更简单的版本,重现了原始错误。
criterion = nn.CrossEntropyLoss()
batch_size = 32
max_len = 350
num_classes = 1000
pred = torch.randn([batch_size, max_len, num_classes])
label = torch.randint(0, num_classes,[batch_size, max_len])
pred = nn.Softmax(dim = 2)(pred)
criterion(pred, label)
Run Code Online (Sandbox Code Playgroud)
pred 和 label 的形状分别是,torch.Size([32, 350, 1000])和torch.Size([32, 350])
遇到的错误是
ValueError: Expected target size (32, 1000), got torch.Size([32, 350, 1000])
Run Code Online (Sandbox Code Playgroud)
如果我对标签进行单热编码以计算损失
x = nn.functional.one_hot(label)
criterion(pred, x)
Run Code Online (Sandbox Code Playgroud)
它会抛出以下错误
ValueError: …Run Code Online (Sandbox Code Playgroud) RunId isClean isFinished
0 APAC_P1_HSFR_REGTEST 0.0 1.0
0 APAC_P1_REGTEST 1.0 1.0
0 APAC_P2a_HSFR_REGTEST 0.0 0.0
0 APAC_P2a_REGTEST 0.0 1.0
0 APAC_P2b_HSFR_REGTEST 0.0 0.0
0 APAC_P2b_REGTEST 1.0 1.0
0 APAC_P2c_HSFR_REGTEST 0.0 0.0
0 APAC_P2c_REGTEST 0.0 1.0
0 APAC_P3a_HSFR_REGTEST 0.0 0.0
0 APAC_P3a_REGTEST 0.0 0.0
0 APAC_P3b_HSFR_REGTEST 0.0 0.0
0 APAC_P3b_REGTEST 0.0 0.0
0 Cliquet_REGTEST 0.0 1.0
Run Code Online (Sandbox Code Playgroud)
RunId Status
0 APAC_P2a_HSFR_REGTEST Error
2 APAC_P2b_HSFR_REGTEST Error
4 APAC_P2c_HSFR_REGTEST Error
6 APAC_P3a_HSFR_REGTEST Error
8 APAC_P3b_HSFR_REGTEST Error
10 CS_P10_HSFR_REGTEST Error
12 CS_P11_HSFR_REGTEST Error …Run Code Online (Sandbox Code Playgroud) 我遇到过这样一个功能:
import math
import random
def low_zeros(value):
for i in xrange(1, 32):
if value >> i << i != value:
break
return i - 1
Run Code Online (Sandbox Code Playgroud)
我用谷歌搜索,但没有找到任何有用的材料 value >> i << i != value: