我有一个包含四列测量数据的pandas数据帧。我想创建一个3D曲面图,其中行索引为X,列索引为Y,数据为Z。(每列中的数据是一系列离散的测量结果,该结果来自一个测试,该测试遍历了每个类别Y的所有X值)。
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(5, 4), columns=['A', 'B', 'C', 'D'])
print(df)
A B C D
0 0.791
我有一个索引了n条记录的数据帧(0 - n)。我想从dataframe中删除'x‘索引处的一行,并将其存储在其他地方。我本质上是在尝试做等同于在Python中执行列表中的pop()的操作。使用pandas数据帧有什么功能或简单的方法可以做到这一点吗?
我尝试过使用drop()方法,但它只返回删除了行的相同数据帧。
dataframe df
row_needed = df.drop([2], axis=0)
)
给定一个数据帧df:
A B C D
0 x y z y
1 x y y y
2 y e r z
当我删除索引1处的行时,我希望返回以下内容并更新df:
A B C D
我是Python的新手,所以如果我的问题不像一个流利的python用户那样连贯,我很抱歉,但我已经在网上搜索过了,真的没有找到我想要做的事情的解决方案。我在csv文件中有一组实验数据,我想将其绘制为3D曲面。它的结构如下:
x(time)
y(depth) z(temperature readings)
y z(temperature readings)
y z(temperature readings)
y z(temperature readings)
基本上,我的第一行和左列应该作为深度时间数组的x,
我有一组数据,其中包含我提取的坐标,以形成我的点的x、y和z分量。在相同数据帧中,我有一个强度(让我们称之为j),我想用它将颜色映射到点上。我的脚本从我的Pandas数据帧中通过迭代添加点:
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
for row, index in df.iterrows():
x = df[row]['x']
y = df[row]['y']
z = df[row]['z']
ax.scatte
我正在尝试使用pandas在数据帧中搜索数据,然后使用收集的数据将这些数据插入到新数据帧上的特定位置。
假设我的代码是这样的:
If row contains [A] then
x=data.iloc[<row>, <column selection>]
y=data.iloc[<row>, <column selection>]
z=data.iloc[<row>, <column selection>]
insert x to newdataframe at location (y,z
我目前正在尝试构建一个N-body模拟,但我在以我想要的方式绘制结果时遇到了一些问题。 在下面的代码中(使用轨道上几个点的一些示例数据),我导入了位置和时间数据,并将其组织到一个pandas数据帧中。为了创建3D动画,我使用matplotlib的动画类,它工作得很好。 然而,通常设置动画的方法是有限的,因为你不能单独定制每一帧中的点(如果我错了,请在这里告诉我:p)。因为我的动画显示的是轨道物体,所以我想改变它们的大小和颜色。为此,我基本上为每个主体创建了一个图形并设置它的颜色等。当它到达update_graph函数时,我遍历n主体,检索它们各自的(x,y,z)坐标,并更新它们的图形。 im
我有一个Pandas DataFrame,列包含x、y和z-值.
import pandas as pd
df = pd.DataFrame({'Age': x,
'Mileage': y,
'Price': z})
使用scipy.optimize.curvefit(),我能够拟合一个单变量指数函数y = exp(-bx):
import numpy as np
from scipy.optimize import curve_fit
# fit y to x
def
我有一个数据帧,我想根据条目对它进行划分。为了说明这个问题,假设我有以下数据帧:
import pandas as pd
df= pd.DataFrame([[1.,2.,3.,4.], [5.,6.,7.,8.], [9.,10.,11.,12.]],
columns=['A','B','C','D'], index=['x','y','z'])
因此,我以df的身份获得了以下内容
A B C D
x 1 2 3
我正在尝试为热图或3D绘图准备一些数据。一般的想法是,我有一些函数z=f(x,y),其中z是特定单元格的值,x是它的列值,y是它的索引值。
我目前的方法是循环遍历数据帧,它已经显示了期望的结果:
import numpy as np
import pandas as pd
def my_fun(a, b):
return(a**2 + b**3)
index = [i for i in np.arange(25.0, 100.0, 25.0)]
columns = [i for i in np.arange(150.0, 600.0, 150.0)]
df = pd.DataFr
我需要像这样转换pandas玩具数据帧(基本上是按entity分组,找到v的值,df['gr'] == 'x'的值,并将该值“扩展”到整个分组):
entity gr v
0 A x 1
1 A y 2
2 A z 3
3 B z 4
4 B x 5
5 B y 6
添加到此表单:
entity gr v new
0 A x 1 1
1 A y 2 1
2 A z 3 1
3 B z
我试图用我自己的excel数据重新创建这个情节,但我遇到了麻烦。到目前为止,我已经:
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
df = pd.read_excel(r'/path/to/data.xlsx')
yr = df['Year']
jd = df['Jday']
dc = df['Discharge']
x = np.asarray(yr)
y = np.asarray(jd)
z = np.asarray(dc)
我需要帮助如何更新3D箭头值从csv目前,我有一个csv文件与3列的x,y,z轴,我想要更新为u,v,w变量在我的python代码。 我面临的问题是,结果动画不能正确地动画。这是一张静态图片,如下所示。 https://i.stack.imgur.com/Os8FX.png 我确信我一定是搞错了如何迭代/读取csv数据文件。 import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from matplotlib.animatio
我有一个奇怪的问题,我还没有找到一个可行的解决方案。我在Python中使用Pandas。 我在Pandas数据帧中有三列,例如: x y z
3 6 9
5 nan 4
4 nan nan
nan nan nan 我想创建第四个列,它在每一行中选择列x y z的最低可能值,并在新列中报告它,或者如果缺少,则简单地报告'nan‘。 预期输出将如下所示: x y z lowest
3 6 9 3
5 nan 4 4
4 nan nan 4
nan nan nan nan 我真的不
假设我有一个包含7列的Pandas数据帧,如下所示:
A B C D E F G
0 1 2 3 4 5 6 7
1 8 9 0 1 2 3 4`
现在我想创建一个新的数据帧,其中从A到E的所有列将从范围x过滤到y (包括x和y),列F将在值x和z之间过滤(包括<代码>D10</代码>和<代码>D11</代码>)。
解决这个问题的最佳方法是什么?
非常感谢提前。
亲爱的所有人:我有一个包含多个3D数据点的数据集,我正在尝试为这个数据集找到最适合的曲线。我可以在2D中这样做,如下所示。 import numpy as np
import os
import pandas as pd
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit
df_reg1=pd.read_csv('C:\\Users\\wilso\\python\\datasets\\PCD\\df_clean_rail.csv')
df_reg=df_reg1[['x',&
我有一些纵向数据,其中有115名患者的体重结构在一个数据帧中。然而,当我尝试绘制这个图时,所有的图形都会相互叠加,使得它很难理解。
现在,我想为每个患者绘制彼此相邻的单独图表,而不是彼此的顶部;因此创建了一个3D图。
我试过这个:
fig = plt.figure()
ax = fig.gca(projection='3d')
x = [i for i in range(10)]
for i in range(115):
y = i
ax.plot(x, dfm.WOMEN.interpolate(method='linear', limit_
我想将列添加到pandas dataframe中,其中的值是从另一列的值开始的递增值。例如,假设我有以下数据帧。
df = pd.DataFrame([['a', 1], ['a', 1], ['b', 5], ['c', 10], ['c', 10], ['c', 10]], columns=['x', 'y'])
df
x y
0 a 1
1 a 1
2 b 5
3 c 10
4 c 10
5 c 10