我已经从一个字典中创建了一个数据框,该字典试图按特定的行进行排序,但是df.sort_values的排序不符合我的预期。
score_data = {'Name': ['Ben', 'Kyle', 'Joe'],
'Team Name': ['team1', 'team1', 'team1'],
'Score': [120, 50, 200]}
df = pd.DataFrame.from_dict(score_data)
df.sort_values('Name', ascending=True, inplace=True)
print(df.to_string(index=False))
尝试按“得分”列进行排序,我期望的是:
Name Team Name Score
Joe team1 200
Ben team1 120
Kyle team1 50
但是我真正得到的是:
Name Team Name Score
Ben team1 120
Joe team1 200
Kyle team1 50
我在这里想念什么?
编辑:我将错误的列名传递给sort_values函数。 h
答案 0 :(得分:0)
您的问题是您正在按“分数”对我的“姓名”进行排序。
"Failed to create a directory: logs/fit/20190411-193710\train; No such file or directory [Op:CreateSummaryFileWriter]"
将其更改为:
import tensorflow as tf
import datetime
mnist = tf.keras.datasets.mnist
(x_train, y_train),(x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
def create_model():
return tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(512, activation='relu'),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(10, activation='softmax')
])
model = create_model()
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
log_dir="logs/fit/"
tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=log_dir,
histogram_freq=1)
model.fit(x=x_train,
y=y_train,
epochs=5,
validation_data=(x_test, y_test),
callbacks=[tensorboard_callback])
希望这会有所帮助! :)
答案 1 :(得分:0)
使用:
df.sort_values('Score', ascending=False, inplace=False)
ascending = False
将为您将值从高到低排序。