Anonymous
Wie gibt ich eine Matrix ein und empfangen Sie Wert (oder Array von Werten) mit maschinellem Lernen in Python?
Post
by Anonymous » 16 Apr 2025, 09:40
Ich habe eine Reihe von binären 8x15 -Matrixen und
ich möchte bestimmen, welcher Index (Zeile und Spalte) der Matrix das Muster durchbricht.
Code: Select all
1 1 1 1 0
1 1 1 1 0
1 1 0 1 0
1 1 1 0 0
1 1 1 0 0
< /code>
Diese Matrix sollte [3, 3] zurückgeben, da diese Position das Muster des Füllens der Matrixspalte mit 1. < /p>
Das folgende Beispiel sollte zurückgeben [3, 1]: < /p>
1 1 1 1 0
1 1 1 1 0
0 1 1 0 0
1 1 1 0 0
1 1 1 0 0
< /code>
Das folgende Beispiel zeigt dieses Problem jedoch nicht, daher sollte es [-1, -1] oder etwas (Vorschläge?) zurückgeben: < /p>
1 1 1 1 0
1 1 1 1 0
1 1 1 1 0
1 1 1 1 0
1 1 1 0 0
< /code>
Wie soll ich dieses Problem mit maschinellem Lernen angehen? State Result
0 [[0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]... [-1, -1]
1 [[1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1]... [-1, -1]
2 [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]... [-1, -1]
3 [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]... [-1, -1]
4 [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]... [-1, -1]
< /code>
dTypes: < /p>
State object
Result object
dtype: object
< /code>
Ein Eintrag des obigen Datenrahmens hätte die erste Spalte mit einem Wert wie: < /p>
[[1, 1, 1, 1, 1, 0, 0, 0],
[1, 1, 1, 1, 1, 0, 0, 0],
[1, 1, 1, 1, 1, 0, 0, 0],
[1, 1, 1, 1, 0, 0, 0, 0],
[1, 1, 1, 1, 0, 0, 0, 0],
[1, 1, 0, 1, 0, 0, 0, 0],
[1, 1, 1, 1, 0, 0, 0, 0],
[1, 1, 1, 1, 0, 0, 0, 0]]
< /code>
und seine zweite Spalte hätte den Wert [6, 3].X = states_data.drop(columns=['Result'])
y = states_data[['Result']]
< /code>
Danach habe ich versucht, DecisionTreeClassifier mit Sklearn zu verwenden, um das Problem zu lösen: < /p>
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2)
X_train = X_train.reset_index(drop=True)
X_test = X_test.reset_index(drop=True)
y_train = y_train.reset_index(drop=True)
y_test = y_test.reset_index(drop=True)
model = DecisionTreeClassifier()
model.fit(X_train, y_train)
predictions = model.predict(X_test)
predictions = pd.DataFrame(predictions, columns = ['Result'])
score = accuracy_score(y_test['Result'], predictions['Result'])
print(score)
< /code>
In dieser Zeile jedoch: < /p>
model.fit(X_train, y_train)
< /code>
Ich erhalte diesen Fehler: < /p>
TypeError: float() argument must be a string or a number, not 'list'
< /code>
Kann mir jemand helfen? Was mache ich falsch?State object
dtype: object
< /code>
y_train.dtypes retektiert: < /p>
Result object
dtype: object
< /code>
Beide x_train.shape und y_train.shape return: < /p>
(543, 1)
1744789228
Anonymous
Ich habe eine Reihe von binären 8x15 -Matrixen und [url=viewtopic.php?t=14917]ich möchte[/url] bestimmen, welcher Index (Zeile und Spalte) der Matrix das Muster durchbricht.[code]1 1 1 1 0 1 1 1 1 0 1 1 0 1 0 1 1 1 0 0 1 1 1 0 0 < /code> Diese Matrix sollte [3, 3] zurückgeben, da diese Position das Muster des Füllens der Matrixspalte mit 1. < /p> Das folgende Beispiel sollte zurückgeben [3, 1]: < /p> 1 1 1 1 0 1 1 1 1 0 0 1 1 0 0 1 1 1 0 0 1 1 1 0 0 < /code> Das folgende Beispiel zeigt dieses Problem jedoch nicht, daher sollte es [-1, -1] oder etwas (Vorschläge?) zurückgeben: < /p> 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 0 0 < /code> Wie soll ich dieses Problem mit maschinellem Lernen angehen? State Result 0 [[0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]... [-1, -1] 1 [[1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1]... [-1, -1] 2 [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]... [-1, -1] 3 [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]... [-1, -1] 4 [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]... [-1, -1] < /code> dTypes: < /p> State object Result object dtype: object < /code> Ein Eintrag des obigen Datenrahmens hätte die erste Spalte mit einem Wert wie: < /p> [[1, 1, 1, 1, 1, 0, 0, 0], [1, 1, 1, 1, 1, 0, 0, 0], [1, 1, 1, 1, 1, 0, 0, 0], [1, 1, 1, 1, 0, 0, 0, 0], [1, 1, 1, 1, 0, 0, 0, 0], [1, 1, 0, 1, 0, 0, 0, 0], [1, 1, 1, 1, 0, 0, 0, 0], [1, 1, 1, 1, 0, 0, 0, 0]] < /code> und seine zweite Spalte hätte den Wert [6, 3].X = states_data.drop(columns=['Result']) y = states_data[['Result']] < /code> Danach habe ich versucht, DecisionTreeClassifier mit Sklearn zu verwenden, um das Problem zu lösen: < /p> X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2) X_train = X_train.reset_index(drop=True) X_test = X_test.reset_index(drop=True) y_train = y_train.reset_index(drop=True) y_test = y_test.reset_index(drop=True) model = DecisionTreeClassifier() model.fit(X_train, y_train) predictions = model.predict(X_test) predictions = pd.DataFrame(predictions, columns = ['Result']) score = accuracy_score(y_test['Result'], predictions['Result']) print(score) < /code> In dieser Zeile jedoch: < /p> model.fit(X_train, y_train) < /code> Ich erhalte diesen Fehler: < /p> TypeError: float() argument must be a string or a number, not 'list' < /code> Kann mir jemand helfen? Was mache ich falsch?State object dtype: object < /code> y_train.dtypes retektiert: < /p> Result object dtype: object < /code> Beide x_train.shape und y_train.shape return: < /p> (543, 1) [/code]