小编tha*_*eow的帖子

Python Plotly,如何去除背景水平线?

如何去除此图表上的背景水平线?代表刻度 5、10、15 等的线条。您可以在下面找到代码:

在此处输入图片说明

# Plotting waterfall chart for Years of Experience lost on DA Team

x_data = ['A', 'B', 'C', 'D', 'E']
y_data = [13, 23.5, 17.5, 10, 2.5] # y_data for positioning the annotations
text = ['27', '7', '5', '10', '5']

# Base
Base = go.Bar(x=x_data, y=[0, 20, 15, 5, 0], marker=dict(color='rgba(1,1,1,     0.0)',))
# Total
Total = go.Bar(x=x_data, y=[27, 0, 0, 0, 0],     marker=dict(color='#003A6F',line=dict(color='k',width=1,)))
# Individuals
Individuals = go.Bar(x=x_data, y=[0, 7, 5, 10, 0], marker=dict( color='#FFE512',line=dict(color='k',width=1,)))
# Years of …
Run Code Online (Sandbox Code Playgroud)

python formatting plotly

7
推荐指数
2
解决办法
1万
查看次数

使用 Pandas 以不同颜色突出显示多个单元格

想象一下,我们有一个数据框,我想为不同的单元格着色:

  • 细胞['Arizona','company'](1st)['Texas','size'](1099)如绿色。
  • 细胞['Florida','veterans'](26)['Maine','armored'](0)如红色。

有什么好办法呢?

raw_data = {'regiment': ['Nighthawks', 'Nighthawks', 'Nighthawks', 'Nighthawks', 'Dragoons', 'Dragoons', 'Dragoons', 'Dragoons', 'Scouts', 'Scouts', 'Scouts', 'Scouts'],
            'company': ['1st', '1st', '2nd', '2nd', '1st', '1st', '2nd', '2nd','1st', '1st', '2nd', '2nd'],
            'deaths': [523, 52, 25, 616, 43, 234, 523, 62, 62, 73, 37, 35],
            'battles': [5, 42, 2, 2, 4, 7, 8, 3, 4, 7, 8, 9],
            'size': [1045, 957, 1099, 1400, 1592, 1006, 987, 849, 973, 1005, 1099, 1523],
            'veterans': [1, …
Run Code Online (Sandbox Code Playgroud)

python highlight pandas

6
推荐指数
1
解决办法
4505
查看次数

python - 将样式对象导出到 csv 时出现 pandas 数据框错误

我有一个数据框,每列的格式都不同。我需要将其导出到 csv 或 dat 文件。但收到以下错误消息:

AttributeError:“Styler”对象没有属性“to_csv”

如何解决这个问题?

import pandas as pd
import datetime

def time_formatter(data):
    return datetime.datetime.strptime(data, "%Y/%m/%d").date().strftime('%Y%m%d')

df = pd.DataFrame({'a':[1,2,3], 'b':['2017/01/01', '2017/01/02','2016/12/31'], 'c':['aaa', 'bbb', 'ccc'], 'd':[4,5,6]})

formatter = {'a':'{:4.2f}', 'b': time_formatter, 'd':'{:8.2f}'}

df = df.style.format(formatter)

df.to_csv('aaa.csv')
Run Code Online (Sandbox Code Playgroud)

python dataframe export-to-csv pandas-styles

6
推荐指数
1
解决办法
8908
查看次数

LabelEncoder-反转并在模型上使用分类数据

我正在做一个预测项目(为了好玩),基本上我从nltk中提取了男性和女性名字,将名字标记为“ male”或“ female”,然后得到每个名字的最后一个字母,最后使用不同的机器学习方法可以根据姓氏来训练和预测性别的算法。

因此,我们知道Python的sklearn不能处理分类数据,因此我使用LabelEncoder将最后一个字母转换为数值:

转换前:

     name     last_letter    gender
0    Aamir    r              male
1    Aaron    n              male
2    Abbey    y              male
3    Abbie    e              male
4    Abbot    t              male

     name       last_letter    gender
0    Abagael    l              female
1    Abagail    l              female
2    Abbe       e              female
3    Abbey      y              female
4    Abbi       i              female
Run Code Online (Sandbox Code Playgroud)

如果我们连接两个数据帧,则删除名称列并随机播放:

     last_letter    gender
0    a              male
1    e              female
2    g              male
3    h              male
4    e              male
Run Code Online (Sandbox Code Playgroud)

然后我用了LabelEncoder

from sklearn.preprocessing import LabelEncoder
label_encoder = LabelEncoder()

for …
Run Code Online (Sandbox Code Playgroud)

python label encoder machine-learning scikit-learn

5
推荐指数
1
解决办法
3330
查看次数

有条件地格式化Python pandas cell

我试图根据单元格的值来着色,突出显示或改变对Python pandas DataFrame的喜爱.例如,如果每行上的单元格大于该行第一列中的单元格,则将单元格突出显示为红色(或任何其他颜色),否则保持原样.

我在这里写了一个for循环:

for index in range(0, df.shape[0]):
    for column in range(1, df.shape[1]): # from 1 not from 0 because I only need # to compare the 2nd to the last cell of each row with the 1st cell in the row 

        if df.iloc[index][column] - df_BDE_n_months_avg_std_pct.iloc[index][0] > 0:
            then "PLEASE PUT YOUR HELP HERE, I NEED A PIECE OF CODE THAT CAN HIGHLIGHT THE CELL"
        else:
            "DO NOTHING"
Run Code Online (Sandbox Code Playgroud)

到目前为止,我还没有找到办法.任何帮助都会很棒.

python conditional-formatting highlight dataframe pandas

4
推荐指数
2
解决办法
2万
查看次数

Python Plotly格式化轴号为%

这是数据帧

df = pd.DataFrame({"col_1":[0.00143,0.00653,0.00732],"col_2":[0.00984,0.00192,0.00751]},index=['A','B','C'])
Run Code Online (Sandbox Code Playgroud)

这是我的阴谋代码:

trace0 = go.Bar(
x=[df.columns[0],df.columns[1]],
y=[df.ix[0,0],df.ix[0,1]],
name=df.index[0],
# marker=dict(color=cof_pal[0]
)


trace1 = go.Bar(
x=[df.columns[0],df.columns[1]],
y=[df.ix[1,0],df.ix[1,1]],
name=df.index[1],
# marker=dict(color=cof_pal[1]
)



trace2 = go.Bar(
x=[df.columns[0],df.columns[1]],
y=[df.ix[2,0],df.ix[2,1]],
name=df.index[2],
# marker=dict(color=cof_pal[2]
)


layout = go.Layout(showlegend=True, title="Title", font=dict(size=Chart_Title_Font_Size),
               yaxis=dict(title='Percentage Change(%)', titlefont=dict(size=yaxis_font_size), tickfont=dict(size=yaxis_font_size)),
               xaxis=dict(title='Time', titlefont=dict(size=xaxis_font_size), tickfont=dict(size=yaxis_font_size))
              )


data = [trace0,trace1,trace2]

fig = go.Figure(data=data, layout=layout)
iplot(fig, filename='fig1')
Run Code Online (Sandbox Code Playgroud)

我需要y轴为x.xx%格式(或小数点后的n位数).

另一个问题是:y轴标题"百分比变化(%)"太靠近y轴数.如何进一步移动?

python formatting plotly

4
推荐指数
2
解决办法
5653
查看次数

Python Plotly 图例定位和格式化

如何将图例放在图表上方/下方并更改字体大小?我有一个包含 12 个长图例名称的图表。将图例放在右侧会影响图表。

另外我需要图例名称是水平的。不是所有的名字在垂直线上都会太长。

python formatting legend plotly

4
推荐指数
1
解决办法
9717
查看次数

将 Python pandas DataFrame 中的数字格式化为以千或百万为单位的货币

我有一个数据框:pd.DataFrame({"Amount":[19000000, 9873200, 823449242]}),我需要将数字转换为以百万计的货币($)。即 $19.00MM、$9.88MM 和 $823.45MM。

有谁知道一个快速的方法来做到这一点?

谢谢!

python format numbers currency pandas

3
推荐指数
1
解决办法
3万
查看次数

Python - pandas 导出到 csv 或 dat 文件,删除 None 或 numpy.nan

将数据帧 df 导出到 dat 文件时,如何删除文件中的 None 或 numpy.nan?我只需要一个空值。

df.to_csv('test.dat')
Run Code Online (Sandbox Code Playgroud)

我试过了:

df = df.fillna('')
Run Code Online (Sandbox Code Playgroud)

或者

df = df.replace(numpy.nan, '') and df = df.replace(None, '')
Run Code Online (Sandbox Code Playgroud)

但我仍然在 csv 或 dat 文件中看到“无”或“南”。

python null pandas

3
推荐指数
1
解决办法
6333
查看次数

在Python Pandas DataFrame中向数字添加千位分隔符的简单方法

假设我有一个pandas数据框,并且想对所有数字(整数和浮点数)添加千位分隔符,那么有什么简便快捷的方法呢?

python separator number-formatting pandas

2
推荐指数
3
解决办法
6069
查看次数