You are using the right method but in a wrong way :)
nan_to_num is a method of numpy module, not numpy.ndarray. So instead of calling nan_to_num on you data, call it on numpy module giving your data as a paramter:
import numpy as np
data = np.array([1,2,3,np.nan,np.nan,5])
data_without_nan = np.nan_to_num(data)
prints:
array([1., 2., 3., 0., 0., 5.])
In your example:
import numpy as np
val = np.nan_to_num(setTo.ravel())
Answer from Beniamin H on Stack Exchangepython - AttributeError: 'numpy.ndarray' object has no attribute 'append' error - Stack Overflow
python 2.7 - Tensorflow error using tf.image.random : 'numpy.ndarray' object has no attribute 'get_shape' - Stack Overflow
AttributeError: 'numpy.ndarray' object has no attribute 'columns'
Python Coding help- keep recieving error message"AttributeError: 'numpy.ndarray' object has no attribute 'MESSAGE_A'"
Videos
https://imgur.com/gallery/yAdAjdx
Hello,
Linked is the screenshot of the two error messages I keep recieving as well as the code leading up to it. I'm trying to run an uplift on a classification tree. Any help is appreciated, I am still fairly new to python. Thank you!!
The problem is that train_test_split(X, y, ...) returns numpy arrays and not pandas dataframes. Numpy arrays have no attribute named columns
If you want to see what features SelectFromModel kept, you need to substitute X_train (which is a numpy.array) with X which is a pandas.DataFrame.
selected_feat= X.columns[(sel.get_support())]
This will return a list of the columns kept by the feature selector.
If you wanted to see how many features were kept you can just run this:
sel.get_support().sum() # by default this will count 'True' as 1 and 'False' as 0
because this :
X = df.iloc[:,:24481].values
y = df.iloc[:, -1].values
you should remove .values or make extra X_col, y_col like that
X_col = df.iloc[:,:24481]
y_col = df.iloc[:, -1]
Hello there.
I started doing manim a few weeks ago and, since there's no official documentation, I've been trying to replicate some of the scenes of 3b1b's old proyects. Specifically, I'm trying to replicate this animation ( https://www.youtube.com/watch?v=k7RM-ot2NWY at 0:37), but whenever I try to render the file, this error appears: "AttributeError: 'numpy.ndarray' object has no attribute 'move_to'".
I've already spend hours looking through the manimlib files but i can't make sense out of this.
Heres the code of the animation that I've got so far:
from manimlib.imports import *
class VectoresComoEscalares(VectorScene):
CONFIG = {
"axis_config": {
"stroke_color": WHITE,
"stroke_width": 2,
"stroke_opacity": 0.8,
},
"background_line_style": {"stroke_width": 2, "stroke_opacity": 0.5,},
"vcoords": ([3, 2]),
"vcolor": ORANGE,
}
def construct(self):
grid = NumberPlane(**self.CONFIG)
self.add(grid)
self.lock_in_faded_grid()
self.play(ShowCreation(grid), run_time=2)
self.wait()
kwargs = {
"stroke_width": 4,
}
vector = self.add_vector(self.vcoords, self.vcolor, **kwargs)
array, x_line, y_line = self.vector_to_coords(vector)
self.add(array)
self.wait()
new_array = self.ideas_generales_escalares(array, vector)
self.scale_basis_vectors(new_array)
self.show_symbolic_sum(new_array, vector)
def ideas_generales_escalares(self, array, vector):
startmo = self.get_mobjects()
txt = TextMobject(
"Vean cada coordenada como un escalar.", tex_to_color_map={"escalar": RED}
)
txt.to_edge(DOWN)
x, y = array.get_entries()
new_x = x.copy().scale(2).set_color(X_COLOR)
new_x.move_to(3 * LEFT + 2 * UP)
new_y = y.copy().scale(2).set_color(Y_COLOR)
new_y.move_to(3 * RIGHT + 2 * UP)
i_hat, j_hat = self.get_basis_vectors()
new_i_hat = Vector(self.vcoords[0] * i_hat.get_end(), color=X_COLOR)
new_j_hat = Vector(self.vcoords[1] * j_hat.get_end(), color=X_COLOR)
g1 = VGroup(i_hat, new_i_hat).shift(3 * LEFT)
g2 = VGroup(i_hat, new_j_hat).shift(3 * RIGHT)
new_array = Matrix([new_x.copy(), new_y.copy()])
new_array.scale(0.5)
new_array.shift(
-new_array.get_boundary_point(-vector.get_end()) + 1.1 * vector.get_end()
)
self.remove(*startmo)
self.play(Transform(x, new_x), Transform(y, new_y), Write(txt))
self.play(FadeIn(i_hat), FadeIn(j_hat))
self.wait()
self.play(FadeIn(i_hat), FadeIn(j_hat))
self.wait()
self.play(Transform(i_hat, new_i_hat), Transform(j_hat, new_j_hat), run_time=3)
self.wait()
startmo.remove(array)
new_x, new_y = new_array.get_entries()
self.play(
Transform(x, new_x),
Transform(y, new_y),
FadeOut(i_hat),
FadeOut(j_hat),
Write(new_array.get_brackets()),
FadeIn(VMobject(*startmo)),
FadeOut(txt),
)
self.remove(x, y)
self.add(new_array)
return new_array