The "frame check sequence" is a 32-bit CRC "checksum" over the entire Ethernet frame, starting with the DMAC and covering the SMAC, type, and payload. It's transmitted as the last four bytes of an Ethernet frame, just before the interpacket gap.
I expect Scapy's Ether() method to have an argument for a packet attribute for this field. It does not.
Note that Scapy methods like IP() and TCP()/UDP() contain a checksum argument ("chksum") for the additional checksums defined for those protocols.
For example...
> IP( raw(UDP(chksum=0) / IP(version=4, chksum(0)) )
<IP version=0 ihl=0 tos=0x35 len=53 id=28 flags= frag=0 ttl=69 proto=hopopt chksum=0x14 src=0.1.0.0 dst=64.0.0.0 |<Raw load='\x7f\x00\x00\x01\x7f\x00\x00\x01' |>>
> ls(Ether)
dst : DestMACfield = (None)
src : SourceMACfield = (None)
type : XShortEnumField = (36864)
> Ether( raw(Ether()) )
<Ether dst=ff:ff:ff:ff:ff:ff src=12:34:56:78:9a:bc type=LOOP |>
> Ether.chksum()
AttributeError: chksum