我正在尝试读取数据文件csv,这已经完成了,但我想写入另一个数据与一些条件添加样式(颜色,两者...)用于csv文件中的数据。
i)我从csv文件中读取数据,是一个简单的测试文件,先应用一个大的数据文件,所以测试的数据是文件
cod price var
AMZ 8484 -1.15
BABA 1390 3.5
GOGL 327 -10.5
MSFT 1135 3.3
VISA 6499 2.0
PBB 1055 4.0
CHC 3455 1.1
IFT 5228 -4.0
FRA 4555 2.0ii) put条件和列变量>1的只读值
iii)在cod栏中放回地面颜色:
red where var => 3
yellow where var = 2 <3iv)保存在另一个数据csv中
在moment之前我的代码是:
import pandas as pd
df = pd.read_csv("teste.csv")
f1 = df['var'] > 1
df[f1].to_csv('export.csv')我不知道如何在熊猫中使用风格,你能帮我解决这个问题吗?
发布于 2020-07-13 21:41:29
你可以试试这样的东西
import numpy as np
import pandas as pd
df = pd.DataFrame([[8484,-1.15],[1390,3.5],[327,10.5],[1135,3.3],[6499,2.0],[1055,4.0]], columns=['data1','dat2'])
def color_rule(val):
return ['background-color: red' if x >= 3 else 'background-color: yellow' for x in val]
html_column = df.style.apply(color_rule, axis=1, subset=['dat2'])
html_column.to_excel('styled.xlsx', engine='openpyxl')
html_column#edit:您可以使用to_excel导出您的样式化数据帧
#edit2:更改列'Cod‘的de颜色,而不是列'var’
import numpy as np
import pandas as pd
df = pd.DataFrame([['ex1',8484,-1.15],['ex2',1390,3.5],['ex3',327,10.5],['ex4',1135,3.3],['ex5',6499,2.0],['ex6',1055,4.0]], columns=['tag','data1','dat2'])
def color_rule(tag):
var1 = df['dat2'][df['tag'] == tag.values[0]]
return ['background-color: red' if x >= 3 else 'background-color: yellow' for x in var1]
html_column = df.style.apply(color_rule, axis=1, subset=['tag'])
html_column.to_excel('styled.xlsx', engine='openpyxl')https://stackoverflow.com/questions/62876876
复制相似问题