我在pandas(python)中有以下数据帧:
B. X. Y.
A
alpha 3. 5. 5
beta 9. 9. 11
Run Code Online (Sandbox Code Playgroud)
我想改变'alpha'换另一个名字,比如'mu'.我该怎么办?
让我们考虑以下熊猫数据框:
df = pd.DataFrame([[1,np.array([6,7])],[4,np.array([8,9])]], columns = {'A','B'})
Run Code Online (Sandbox Code Playgroud)
其中B列由两个numpy数组组成。
如果保存数据帧并再次加载,则numpy数组将转换为字符串。
df.to_csv('test.csv', index = False)
df.read_csv('test.csv')
Run Code Online (Sandbox Code Playgroud)
有没有简单的方法可以解决此问题?这是已加载数据帧的输出。
我有四个方形矩阵,尺寸为3Nx3N,称为A,B,C和D.
我想将它们组合在一个矩阵中.带有for循环的代码如下:
import numpy
N = 3
A = numpy.random.random((3*N, 3*N))
B = numpy.random.random((3*N, 3*N))
C = numpy.random.random((3*N, 3*N))
D = numpy.random.random((3*N, 3*N))
final = numpy.zeros((6*N, 6*N))
for i in range(N):
for j in range(N):
for k in range(3):
for l in range(3):
final[6*i + k][6*j + l] = A[3*i+k][3*j+l]
final[6*i + k + 3][6*j + l + 3] = B[3*i+k][3*j+l]
final[6*i + k + 3][6*j + l] = C[3*i+k][3*j+l]
final[6*i + k][6*j + l + 3] = …
Run Code Online (Sandbox Code Playgroud) 我们有一个包含三个不同列的数据框,如上例(df)所示.此任务的目标是每次第1列中的字母更改时,用np.nan 替换第2列的第一个元素.由于研究中的数据库非常大,因此不能用于循环.此外,每个涉及班次的解决方案都被排除在外,因为它太慢了.
我相信最简单的方法是使用groupby和head方法,但是我不知道如何替换原始数据帧.
例子:
df = pd.DataFrame([['A','Z',1.11],['B','Z',2.1],['C','Z',3.1],['D', 'X', 2.1], ['E','X',4.3],['E', 'X', 2.1], ['F','X',4.3]])
Run Code Online (Sandbox Code Playgroud)
要选择我们想要更改的元素,我们可以执行以下操作:
df.groupby(by=1).head(1)[2] = np.nan
Run Code Online (Sandbox Code Playgroud)
但是在原始数据帧中没有任何变化.
目标是获得以下内容:
根据评论,我们不会df[1]
回到已经看过的小组,例如['Z', 'Z', 'X', 'Z']
不可能.
我有一组维基百科的文本.
使用tf-idf,我可以定义每个单词的权重.以上是代码:
import pandas as pd
from sklearn.feature_extraction.text import TfidfVectorizer
wiki = pd.read_csv('people_wiki.csv')
tfidf_vectorizer = TfidfVectorizer(max_features= 1000000)
tfidf = tfidf_vectorizer.fit_transform(wiki['text'])
Run Code Online (Sandbox Code Playgroud)
目标是查看tf-idf列中显示的权重:
文件'people_wiki.csv'在这里:
我使用keras实现了一个分类程序.我有一大堆图像,我想使用for循环预测每个图像.
但是,每次计算新图像时,交换内存都会增加.我试图删除预测函数中的所有变量(我确信它在此函数内部存在问题)但内存仍然增加.
for img in images:
predict(img, model, categ_par, gl_par)
Run Code Online (Sandbox Code Playgroud)
和相应的功能:
def predict(image_path, model, categ_par, gl_par):
print("[INFO] loading and preprocessing image...")
orig = cv2.imread(image_path)
image = load_img(image_path, target_size=(gl_par.img_width, gl_par.img_height))
image = img_to_array(image)
# important! otherwise the predictions will be '0'
image = image / 255
image = np.expand_dims(image, axis=0)
# build the VGG16 network
if(categ_par.method == 'VGG16'):
model = applications.VGG16(include_top=False, weights='imagenet')
if(categ_par.method == 'InceptionV3'):
model = applications.InceptionV3(include_top=False, weights='imagenet')
# get the bottleneck prediction from the pre-trained VGG16 model
bottleneck_prediction = …
Run Code Online (Sandbox Code Playgroud) 这是使用python和qt完成的非常简单的应用程序,其中嵌入了matplotlib图。我想在情节上包括标准工具栏(缩放,首页等)。有可能吗?上面有一个代码示例。
import sys
from PyQt5 import QtCore
from PyQt5.QtWidgets import QApplication, QMainWindow, QMenu, QVBoxLayout, QSizePolicy, QMessageBox, QWidget, QPushButton, QAction, QLineEdit, QLabel
from PyQt5.QtGui import QIcon
from PyQt5 import QtWidgets
from PyQt5.QtCore import QSize
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.figure import Figure
import matplotlib.pyplot as plt
import random
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.backends.backend_qt5agg import NavigationToolbar2QT as NavigationToolbar
class MainWindow(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)
self.title = 'test'
self.left = 10
self.top = 10
self.width = 1920
self.height = …
Run Code Online (Sandbox Code Playgroud) 我有两张图片,一张有 Alpha 通道,另一张没有。因此, imageA
和 分别B
具有(x,y,4)和(x,y,3)的形状。
我想使用 将两个图像合并到一个张量中python
,其中B
是背景,A
是上图。最终图像的形状必须为 (x, y, 3)。我试过 scikit-image 或 cv2 是否能够做到这一点,但我找不到任何解决方案。
我有一个名为 crypto 的 mySQL 数据库,其中有一个名为 coin 的表,其中包含三个不同的列:时间戳、价格、数量。问题如下:我想按5分钟内的时间戳对数据进行分组,其中字段价格表示最大值,字段数量表示总和。
我尝试了以下命令:
SELECT sum(volume), max(price),
round(unix_timestamp(addtime(date(0), timestamp) )/(15*60)) AS
timestamp
FROM btcusd_raw0
GROUP BY timestamp;
Run Code Online (Sandbox Code Playgroud)
但它不会将日期时间作为列返回。
我有一个矩阵A和一个向量B,其中矩阵A用0和1填充,向量B用字符串填充。我想执行以下操作:
A = np.array([[1,1,0],[0,1,1],[0,0,1]])
B = np.array(['a','b','c'])
Run Code Online (Sandbox Code Playgroud)
结果必须是:
R = np.array(['a'+'b', 'b'+'c', 'c'])
Run Code Online (Sandbox Code Playgroud)
有可能做到numpy
吗?
如何在收敛过程中计算 sklearn 中的集群异质性?集群异质性由每个样本点相对于指定集群的欧几里得距离的总和给出。这为每个步骤提供了不同的值。