人工智能学习——第四课:Tensorflow学习——梯度下降算法优化(打印Tensorflow版本、打印数据集、生成线形图)

一、案例:线性回归实验

# 导入Tensorflow模块定义别名tf
import tensorflow as tf
# 打印Tensorflow版本
print (tf.__version__)
2.19.0
问题:存在无法找到文件

方法1(推荐使用原始字符串):

data = pd.read_csv(r'D:\workspaces\Miniconda_workSpaces\datasheets\1.csv')

方法2(使用双反斜杠,特别注意最后一部分):

data = pd.read_csv('D:\\workspaces\\Miniconda_workSpaces\\datasheets\\1.csv')

方法3(使用正斜杠):

data = pd.read_csv('D:/workspaces/Miniconda_workSpaces/datasheets/1.csv')



# 第一次导入数据集文件income.csv
# 报错:数据文件income.csv导入数据集报utf
-8编码错误 # 报错信息:“UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd0 in position 0: invalid continuation byte” # 第一次导入数据集 data = pd.read_csv('./income.csv') # 详细报错 --------------------------------------------------------------------------- UnicodeDecodeError Traceback (most recent call last) Cell In[8], line 1 ----> 1 data = pd.read_csv('./income.csv') File D:\Softwares\miniconda3\envs\Tensorflow\lib\site-packages\pandas\io\parsers\readers.py:1026, in read_csv(filepath_or_buffer, sep, delimiter, header, names, index_col, usecols, dtype, engine, converters, true_values, false_values, skipinitialspace, skiprows, skipfooter, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, date_format, dayfirst, cache_dates, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, doublequote, escapechar, comment, encoding, encoding_errors, dialect, on_bad_lines, delim_whitespace, low_memory, memory_map, float_precision, storage_options, dtype_backend) 1013 kwds_defaults = _refine_defaults_read( 1014 dialect, 1015 delimiter, (...) 1022 dtype_backend=dtype_backend, 1023 ) 1024 kwds.update(kwds_defaults) -> 1026 return _read(filepath_or_buffer, kwds) File D:\Softwares\miniconda3\envs\Tensorflow\lib\site-packages\pandas\io\parsers\readers.py:620, in _read(filepath_or_buffer, kwds) 617 _validate_names(kwds.get("names", None)) 619 # Create the parser. --> 620 parser = TextFileReader(filepath_or_buffer, **kwds) 622 if chunksize or iterator: 623 return parser File D:\Softwares\miniconda3\envs\Tensorflow\lib\site-packages\pandas\io\parsers\readers.py:1620, in TextFileReader.__init__(self, f, engine, **kwds) 1617 self.options["has_index_names"] = kwds["has_index_names"] 1619 self.handles: IOHandles | None = None -> 1620 self._engine = self._make_engine(f, self.engine) File D:\Softwares\miniconda3\envs\Tensorflow\lib\site-packages\pandas\io\parsers\readers.py:1898, in TextFileReader._make_engine(self, f, engine) 1895 raise ValueError(msg) 1897 try: -> 1898 return mapping[engine](f, **self.options) 1899 except Exception: 1900 if self.handles is not None: File D:\Softwares\miniconda3\envs\Tensorflow\lib\site-packages\pandas\io\parsers\c_parser_wrapper.py:93, in CParserWrapper.__init__(self, src, **kwds) 90 if kwds["dtype_backend"] == "pyarrow": 91 # Fail here loudly instead of in cython after reading 92 import_optional_dependency("pyarrow") ---> 93 self._reader = parsers.TextReader(src, **kwds) 95 self.unnamed_cols = self._reader.unnamed_cols 97 # error: Cannot determine type of 'names' File parsers.pyx:574, in pandas._libs.parsers.TextReader.__cinit__() File parsers.pyx:663, in pandas._libs.parsers.TextReader._get_header() File parsers.pyx:874, in pandas._libs.parsers.TextReader._tokenize_rows() File parsers.pyx:891, in pandas._libs.parsers.TextReader._check_tokenize_status() File parsers.pyx:2053, in pandas._libs.parsers.raise_parser_error() UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd0 in position 0: invalid continuation byte
# 第二次导数数据文件incom.csv
# 报错:没有导入pandas模块定义pd别名 # 报错信息:“
NameError: name 'pd' is not defined
# 解决办法:添加编码格式

# 第二次导入数据文件
data
= pd.read_csv('./income.csv', encoding='gbk')

# 详细报错
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
Cell In[1], line 1
----> 1 data = pd.read_csv('./income.csv', encoding='gbk')

NameError: name 'pd' is not defined
# 第三次导入数据文件incom.csv
# 数据集更新
 
# 第三次导入数据文件,定义原数据gbk编码格式
data = pd.read_csv('./income.csv', encoding='gbk')
# 输出数据表
data
# 输出结果
    number    name    education            income
0    1        张三        20            10000
1    2        李四        12            9000
2    3        王五        34            8000
3    4        魏斌        16            12000
4    5        王红        23            10000
5    6        小新        24            10700
6    7        小玲        25            11000
7    8        小明        26            11300
8    9        小白        27            11600
9    10        小微        28            11900

# 定义x轴参数education列值
# 定义y轴参数income列值
plt.scatter(data.education, data.income)

# 输出绘图结果:
# 总结
定义x轴(表education列值)与y轴(表income列值)的线性关系,后续整理f(x)=ax+b的函数关系及优化方法。

 

posted on 2025-05-01 09:39  gkhost  阅读(27)  评论(0)    收藏  举报

导航